Function at 0x536090
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2fc
mov eax, dword [0x5c0290]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
sub esp, 0xc
mov dword [ebp - 0xc8], ecx
mov ecx, esp
mov dword [ebp - 0x2f0], 0x39636945
lea eax, [ebp - 0x2b0]
mov dword [ebp - 0x2ec], 0x5367794a
mov dword [ebp - 0x2e8], 0x34496a50
push dword [ebp - 0xc8]
mov dword [ebp - 0x2e4], 0x7641514e
push eax
lea eax, [ebp - 0x2f0]
mov dword [ebp - 0x2e0], 0x70706949
mov dword [ebp - 0x2dc], 0x41734761
mov dword [ebp - 0x2d8], 0x70457a4c
mov dword [ebp - 0x2d4], 0x794d7a4b
mov dword [ebp - 0x2d0], 0x43515863
mov dword [ebp - 0x2cc], 0x37356e63
mov dword [ebp - 0x2c8], 0x34494148
mov dword [ebp - 0x2c4], 0x7a645342
mov dword [ebp - 0x2c0], 0x306f5465
mov dword [ebp - 0x2bc], 0x53633349
mov dword [ebp - 0x2b8], 0x416f4848
mov dword [ebp - 0x2b4], 0x55414141
push eax
push 0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
call fcn.004660a0
lea eax, [ebp - 0x2fc]
push eax
call fcn.0047fb90
add esp, 0x10
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xc4], esi
sub eax, esi
je 0x537178
xor eax, eax
xor edi, edi
mov dword [ebp - 0xbc], eax
xor ecx, ecx
mov dword [ebp - 0xb8], eax
xor edx, edx
mov dword [ebp - 0xb4], eax
xor ebx, ebx
lea eax, [esi + 1]
mov dword [ebp - 0xbc], edi
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xb4], edx
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0xd0], eax
nop
mov al, byte [esi]
inc esi
test al, al
jne 0x5361e0
sub esi, dword [ebp - 0xd0]
je 0x536332
jmp 0x536200
mov esi, dword [ebp - 0xc4]
lea eax, [ebp - 0xbd]
mov bl, byte [ebx + esi]
xor bl, 0x8b
mov byte [ebp - 0xbd], bl
cmp eax, ecx
jae 0x53628b
cmp edi, eax
ja 0x53628b
mov ebx, eax
sub ebx, edi
cmp ecx, edx
jne 0x536280
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x536280
mov eax, edi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x53718c
sub edx, edi
or eax, 0xffffffff
mov esi, edx
sub ecx, edi
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x536255
xor edx, edx
jmp 0x536257
add edx, esi
cmp edx, ecx
cmovb edx, ecx
lea ecx, [ebp - 0xbc]
push edx
call fcn.0046ae20
mov edx, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc4]
test ecx, ecx
je 0x5362ed
mov al, byte [edi + ebx]
mov byte [ecx], al
jmp 0x5362ed
cmp ecx, edx
jne 0x5362e7
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x5362e7
mov eax, edi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x53718c
sub edx, edi
or eax, 0xffffffff
mov esi, edx
sub ecx, edi
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x5362bc
xor edx, edx
jmp 0x5362be
add edx, esi
cmp edx, ecx
cmovb edx, ecx
lea ecx, [ebp - 0xbc]
push edx
call fcn.0046ae20
mov edx, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc4]
test ecx, ecx
je 0x5362ed
mov byte [ecx], bl
mov ebx, dword [ebp - 0xcc]
lea eax, [esi + 1]
inc ecx
mov dword [ebp - 0xd0], eax
inc ebx
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xcc], ebx
lea ebx, [ebx]
mov al, byte [esi]
inc esi
test al, al
jne 0x536310
sub esi, dword [ebp - 0xd0]
cmp ebx, esi
jb 0x536200
test edi, edi
je 0x536332
push edi
call fcn.0053c1e0
add esp, 4
mov eax, dword [ebp - 0x2fc]
test eax, eax
je 0x536345
push eax
call fcn.0053c1e0
add esp, 4
push 0xa8
xor ebx, ebx
lea eax, [ebp - 0xac]
push ebx
push eax
call fcn.0053e0b0
add esp, 0xc
lea ecx, [ebp - 0xac]
push 1
call fcn.004aef90
mov edi, dword [ebp - 0xc8]
cmp dword [edi + 0xc], ebx
jne 0x536970
mov ecx, edi
call fcn.004e2a20
mov ebx, eax
mov dword [ebp - 0xc8], ebx
test ebx, ebx
je 0x536970
mov dword [ebp - 0x260], 0x39636945
mov dword [ebp - 0x25c], 0x5367794a
mov dword [ebp - 0x258], 0x34496a50
mov dword [ebp - 0x254], 0x7641514e
mov dword [ebp - 0x250], 0x70706949
mov dword [ebp - 0x24c], 0x41734761
mov dword [ebp - 0x248], 0x2b59794c
mov dword [ebp - 0x244], 0x69594349
mov dword [ebp - 0x240], 0x38595449
mov dword [ebp - 0x23c], 0x6a736959
mov dword [ebp - 0x238], 0x786b444c
mov dword [ebp - 0x234], 0x3130324e
mov dword [ebp - 0x230], 0x6c4d584a
mov dword [ebp - 0x22c], 0x79386950
mov dword [ebp - 0x228], 0x6c34794a
mov dword [ebp - 0x224], 0x6745444c
mov dword [ebp - 0x220], 0x4241514f
mov dword [ebp - 0x21c], 0x4f6b5145
mov dword [ebp - 0x218], 0x44596848
mov dword [ebp - 0x214], 0x4630444c
mov dword [ebp - 0x210], 0x36305345
mov dword [ebp - 0x20c], 0x5851515a
mov dword [ebp - 0x208], 0x306b7944
mov dword [ebp - 0x204], 0x5145584e
mov dword [ebp - 0x200], 0x4d385444
mov dword [ebp - 0x1fc], 0x586b3350
mov dword [ebp - 0x1f8], 0x6659514e
mov dword [ebp - 0x1f4], 0x45733341
mov dword [ebp - 0x1f0], 0x37346d65
mov dword [ebp - 0x1ec], 0x364a774e
mov dword [ebp - 0x1e8], 0x4d77694a
mov dword [ebp - 0x1e4], 0x3078785a
mov dword [ebp - 0x1e0], 0x72387a47
mov dword [ebp - 0x1dc], 0x7a647844
mov dword [ebp - 0x1d8], 0x45737750
mov dword [ebp - 0x1d4], 0x726f4345
mov dword [ebp - 0x1d0], 0x65517843
mov dword [ebp - 0x1cc], 0x68515262
mov dword [ebp - 0x1c8], 0x3930684b
mov dword [ebp - 0x1c4], 0x74305844
mov dword [ebp - 0x1c0], 0x6a35424d
mov dword [ebp - 0x1bc], 0x58635442
mov dword [ebp - 0x1b8], 0x34496d4d
mov dword [ebp - 0x1b4], 0x55554341
mov dword [ebp - 0x1b0], 0x67494744
mov dword [ebp - 0x1ac], 0x32305241
mov dword [ebp - 0x1a8], 0x6a496848
mov dword [ebp - 0x1a4], 0x6c34534b
mov dword [ebp - 0x1a0], 0x44734145
mov dword [ebp - 0x19c], 0x6d734346
mov dword [ebp - 0x198], 0x745a684c
mov dword [ebp - 0x194], 0x79317841
mov dword [ebp - 0x190], 0x6f413247
mov dword [ebp - 0x18c], 0x726f4147
mov dword [ebp - 0x188], 0x3935674e
mov dword [ebp - 0x184], 0x4a554350
mov dword [ebp - 0x180], 0x374a3341
mov dword [ebp - 0x17c], 0x79454744
mov dword [ebp - 0x178], 0x36554250
mov dword [ebp - 0x174], 0x64385863
mov dword [ebp - 0x170], 0x6e5a794d
mov dword [ebp - 0x16c], 0x6f597748
mov dword [ebp - 0x168], 0x546b4447
mov dword [ebp - 0x164], 0x2f355841
mov dword [ebp - 0x160], 0x7a516965
mov dword [ebp - 0x15c], 0x44554350
mov dword [ebp - 0x158], 0x5755684b
mov dword [ebp - 0x154], 0x376b4161
mov dword [ebp - 0x150], 0x49776944
mov dword [ebp - 0x14c], 0x476f4841
mov dword [ebp - 0x148], 0x4d457a46
mov dword [ebp - 0x144], 0x5267534f
mov dword [ebp - 0x140], 0x74597a63
mov dword [ebp - 0x13c], 0x54735149
mov dword [ebp - 0x138], 0x64386e50
mov dword [ebp - 0x134], 0x3338334c
mov dword [ebp - 0x130], 0x49673247
mov dword [ebp - 0x12c], 0x484d5159
mov dword [ebp - 0x128], 0x31555444
mov dword [ebp - 0x124], 0x79676e64
mov dword [ebp - 0x120], 0x61385444
sub esp, 0xc
mov dword [ebp - 0x11c], 0x5251694e
mov ecx, esp
mov dword [ebp - 0x118], 0x2f457748
lea eax, [ebp - 0xd1]
mov dword [ebp - 0x114], 0x5a304350
mov dword [ebp - 0x110], 0x4b496d50
push dword [ebp - 0xc8]
mov dword [ebp - 0x10c], 0x6434784b
push eax
lea eax, [ebp - 0x260]
mov dword [ebp - 0x108], 0x36704144
mov dword [ebp - 0x104], 0x54386844
mov dword [ebp - 0x100], 0x72457a4b
mov dword [ebp - 0xfc], 0x30737a4d
mov dword [ebp - 0xf8], 0x66514450
mov dword [ebp - 0xf4], 0x33307847
mov dword [ebp - 0xf0], 0x4355534a
mov dword [ebp - 0xec], 0x436b5243
mov dword [ebp - 0xe8], 0x5759794e
mov dword [ebp - 0xe4], 0x4a345443
mov dword [ebp - 0xe0], 0x4f77774f
mov dword [ebp - 0xdc], 0x53556861
mov dword [ebp - 0xd8], 0x4141774f
mov word [ebp - 0xd4], 0x5041
mov byte [ebp - 0xd2], 0x63
push eax
push 0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
call fcn.004660a0
lea eax, [ebp - 0x2fc]
push eax
call fcn.0047fb90
add esp, 0x10
mov ebx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xcc], ebx
sub eax, ebx
jne 0x5367d4
jmp 0x537182
xor eax, eax
mov esi, ebx
xor edi, edi
mov dword [ebp - 0xbc], eax
xor ecx, ecx
mov dword [ebp - 0xb8], eax
xor edx, edx
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xbc], edi
lea ebx, [esi + 1]
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xb4], edx
mov dword [ebp - 0xc4], eax
jmp 0x536810
mov al, byte [esi]
inc esi
test al, al
jne 0x536810
sub esi, ebx
je 0x536952
nop
mov eax, dword [ebp - 0xcc]
mov esi, dword [ebp - 0xc4]
mov bl, byte [eax + esi]
lea eax, [ebp - 0xae]
xor bl, 0x8b
mov byte [ebp - 0xae], bl
cmp eax, ecx
jae 0x5368b1
cmp edi, eax
ja 0x5368b1
mov ebx, eax
sub ebx, edi
cmp ecx, edx
jne 0x5368a6
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x5368a6
mov eax, edi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x53718c
sub edx, edi
or eax, 0xffffffff
mov esi, edx
sub ecx, edi
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x53687b
xor edx, edx
jmp 0x53687d
add edx, esi
cmp edx, ecx
cmovb edx, ecx
lea ecx, [ebp - 0xbc]
push edx
call fcn.0046ae20
mov edx, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc4]
test ecx, ecx
je 0x536913
mov al, byte [edi + ebx]
mov byte [ecx], al
jmp 0x536913
cmp ecx, edx
jne 0x53690d
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x53690d
mov eax, edi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x53718c
sub edx, edi
or eax, 0xffffffff
mov esi, edx
sub ecx, edi
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x5368e2
xor edx, edx
jmp 0x5368e4
add edx, esi
cmp edx, ecx
cmovb edx, ecx
lea ecx, [ebp - 0xbc]
push edx
call fcn.0046ae20
mov edx, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc4]
test ecx, ecx
je 0x536913
mov byte [ecx], bl
inc ecx
inc esi
mov dword [ebp - 0xc4], esi
mov esi, dword [ebp - 0xcc]
mov dword [ebp - 0xb8], ecx
lea ebx, [esi + 1]
lea ebx, [ebx]
mov al, byte [esi]
inc esi
test al, al
jne 0x536930
sub esi, ebx
cmp dword [ebp - 0xc4], esi
jb 0x536820
test edi, edi
je 0x536952
push edi
call fcn.0053c1e0
add esp, 4
mov eax, dword [ebp - 0x2fc]
test eax, eax
je 0x536965
push eax
call fcn.0053c1e0
add esp, 4
mov ebx, dword [ebp - 0xc8]
jmp 0x5370da
lea eax, [ebp - 0xc8]
mov dword [edi + 0xc], 1
push eax
lea eax, [ebp - 0xd0]
push eax
mov eax, dword [ebp + 8]
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
call fcn.004c2870
add esp, 4
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00513d10
test eax, eax
je 0x5369e2
mov eax, dword [ebp + 8]
push dword [eax - 8]
push eax
call fcn.0053eeff
mov edx, eax
add esp, 8
test edx, edx
js 0x537196
mov ecx, dword [ebp + 8]
cmp edx, dword [ecx - 8]
jg 0x537196
mov dword [ecx - 0xc], edx
mov ebx, 0x914
mov eax, dword [ebp + 8]
xor ecx, ecx
mov word [eax + edx*2], cx
jmp 0x5370da
push 0x10
push 0x22
push dword [edi + 0x14]
lea ecx, [ebp - 0xac]
call fcn.00539aa0
cmp dword [ebp - 0x58], 0
jne 0x5370ac
mov dword [ebp - 0x2b0], 0x39636945
mov dword [ebp - 0x2ac], 0x5367794a
mov dword [ebp - 0x2a8], 0x34496a50
mov dword [ebp - 0x2a4], 0x7641514e
mov dword [ebp - 0x2a0], 0x70706949
mov dword [ebp - 0x29c], 0x44734761
mov dword [ebp - 0x298], 0x67774349
mov dword [ebp - 0x294], 0x324a4450
mov dword [ebp - 0x290], 0x795a4450
mov dword [ebp - 0x28c], 0x6e30544c
mov dword [ebp - 0x288], 0x6755334b
mov dword [ebp - 0x284], 0x6868794f
mov dword [ebp - 0x280], 0x676f444c
mov dword [ebp - 0x27c], 0x2f70534e
mov dword [ebp - 0x278], 0x59775848
mov dword [ebp - 0x274], 0x30705344
mov dword [ebp - 0x270], 0x70776843
mov dword [ebp - 0x26c], 0x59775259
mov dword [ebp - 0x268], 0x4534674b
mov dword [ebp - 0x264], 0x73414741
mov dword [ebp - 0x260], 0x47455346
mov dword [ebp - 0x25c], 0x53497743
mov dword [ebp - 0x258], 0x694d775a
mov dword [ebp - 0x254], 0x756b6849
mov dword [ebp - 0x250], 0x48554365
mov dword [ebp - 0x24c], 0x4977774d
mov dword [ebp - 0x248], 0x4e594249
mov dword [ebp - 0x244], 0x53637a62
mov dword [ebp - 0x240], 0x4e6f6843
mov dword [ebp - 0x23c], 0x346f794b
mov dword [ebp - 0x238], 0x69734246
mov dword [ebp - 0x234], 0x33355141
mov dword [ebp - 0x230], 0x68527763
mov dword [ebp - 0x22c], 0x4830414b
mov dword [ebp - 0x228], 0x34457966
mov dword [ebp - 0x224], 0x69495264
mov dword [ebp - 0x220], 0x30777a4c
mov dword [ebp - 0x21c], 0x36456a50
mov dword [ebp - 0x218], 0x45677844
mov dword [ebp - 0x214], 0x786b6963
mov dword [ebp - 0x210], 0x75597863
mov dword [ebp - 0x20c], 0x7738414d
mov dword [ebp - 0x208], 0x746b6742
mov dword [ebp - 0x204], 0x4e635350
mov dword [ebp - 0x200], 0x42554342
mov dword [ebp - 0x1fc], 0x7477514b
mov dword [ebp - 0x1f8], 0x394a6964
mov dword [ebp - 0x1f4], 0x5245514d
mov dword [ebp - 0x1f0], 0x47675466
mov dword [ebp - 0x1ec], 0x79736963
mov dword [ebp - 0x1e8], 0x67597743
mov dword [ebp - 0x1e4], 0x796b5241
mov dword [ebp - 0x1e0], 0x5a59795a
mov dword [ebp - 0x1dc], 0x5277675a
mov dword [ebp - 0x1d8], 0x344a7959
mov dword [ebp - 0x1d4], 0x6f597763
mov dword [ebp - 0x1d0], 0x4f384264
mov dword [ebp - 0x1cc], 0x58774450
mov dword [ebp - 0x1c8], 0x67525841
mov dword [ebp - 0x1c4], 0x68387765
mov dword [ebp - 0x1c0], 0x47495141
mov dword [ebp - 0x1bc], 0x35316e42
mov dword [ebp - 0x1b8], 0x35316a47
mov dword [ebp - 0x1b4], 0x3877774f
mov dword [ebp - 0x1b0], 0x50634343
mov dword [ebp - 0x1ac], 0x30684463
mov dword [ebp - 0x1a8], 0x36634349
mov dword [ebp - 0x1a4], 0x65387741
mov dword [ebp - 0x1a0], 0x554d5463
mov dword [ebp - 0x19c], 0x5949514e
mov dword [ebp - 0x198], 0x6c705149
mov dword [ebp - 0x194], 0x786b7a4b
mov dword [ebp - 0x190], 0x546b694d
mov dword [ebp - 0x18c], 0x72316943
mov dword [ebp - 0x188], 0x2b77794a
mov dword [ebp - 0x184], 0x516b4861
mov dword [ebp - 0x180], 0x716f774f
mov dword [ebp - 0x17c], 0x6e345462
mov dword [ebp - 0x178], 0x6c38524a
mov dword [ebp - 0x174], 0x41674345
mov dword [ebp - 0x170], 0x2f636763
sub esp, 0xc
mov dword [ebp - 0x16c], 0x78776949
mov ecx, esp
mov dword [ebp - 0x168], 0x39747949
lea eax, [ebp - 0xd0]
mov dword [ebp - 0x164], 0x50456a50
mov dword [ebp - 0x160], 0x2b305849
push dword [ebp - 0xc8]
mov dword [ebp - 0x15c], 0x434d7746
push eax
lea eax, [ebp - 0x2b0]
mov dword [ebp - 0x158], 0x2b426749
mov dword [ebp - 0x154], 0x67387848
mov dword [ebp - 0x150], 0x42774442
mov dword [ebp - 0x14c], 0x4e305841
mov dword [ebp - 0x148], 0x6b4e6964
mov dword [ebp - 0x144], 0x306f4247
mov dword [ebp - 0x140], 0x5a6f6966
mov dword [ebp - 0x13c], 0x6c775449
mov dword [ebp - 0x138], 0x67593366
mov dword [ebp - 0x134], 0x4955534c
mov dword [ebp - 0x130], 0x2b4e5342
mov dword [ebp - 0x12c], 0x68387746
mov dword [ebp - 0x128], 0x64344348
mov dword [ebp - 0x124], 0x68454143
mov dword [ebp - 0x120], 0x34305749
mov dword [ebp - 0x11c], 0x776b694e
mov dword [ebp - 0x118], 0x57735250
mov dword [ebp - 0x114], 0x726b7944
mov dword [ebp - 0x110], 0x7756684b
mov dword [ebp - 0x10c], 0x7a4d4350
mov dword [ebp - 0x108], 0x4559334d
mov dword [ebp - 0x104], 0x644d7a4b
mov dword [ebp - 0x100], 0x2b455166
mov dword [ebp - 0xfc], 0x6e775843
mov dword [ebp - 0xf8], 0x3941674d
mov dword [ebp - 0xf4], 0x6c4d774e
mov dword [ebp - 0xf0], 0x54345841
mov dword [ebp - 0xec], 0x2b4d5147
mov dword [ebp - 0xe8], 0x77643364
mov dword [ebp - 0xe4], 0x756f7a49
mov dword [ebp - 0xe0], 0x2b524341
mov dword [ebp - 0xdc], 0x6d466a4d
mov dword [ebp - 0xd8], 0x416f324b
mov dword [ebp - 0xd4], 0x38454141
push eax
push 0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
call fcn.004660a0
lea eax, [ebp - 0x2fc]
push eax
call fcn.0047fb90
add esp, 0x10
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xc4], esi
sub eax, esi
je 0x5371a0
xor eax, eax
xor edi, edi
mov dword [ebp - 0xbc], eax
xor ecx, ecx
mov dword [ebp - 0xb8], eax
xor edx, edx
mov dword [ebp - 0xb4], eax
xor ebx, ebx
lea eax, [esi + 1]
mov dword [ebp - 0xbc], edi
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xb4], edx
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0xc8], eax
mov al, byte [esi]
inc esi
test al, al
jne 0x536f41
sub esi, dword [ebp - 0xc8]
je 0x537092
jmp 0x536f60
mov esi, dword [ebp - 0xc4]
lea eax, [ebp - 0xad]
mov bl, byte [ebx + esi]
xor bl, 0x8b
mov byte [ebp - 0xad], bl
cmp eax, ecx
jae 0x536feb
cmp edi, eax
ja 0x536feb
mov ebx, eax
sub ebx, edi
cmp ecx, edx
jne 0x536fe0
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x536fe0
mov eax, edi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x53718c
sub edx, edi
or eax, 0xffffffff
mov esi, edx
sub ecx, edi
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x536fb5
xor edx, edx
jmp 0x536fb7
add edx, esi
cmp edx, ecx
cmovb edx, ecx
lea ecx, [ebp - 0xbc]
push edx
call fcn.0046ae20
mov edx, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc4]
test ecx, ecx
je 0x53704d
mov al, byte [edi + ebx]
mov byte [ecx], al
jmp 0x53704d
cmp ecx, edx
jne 0x537047
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x537047
mov eax, edi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x53718c
sub edx, edi
or eax, 0xffffffff
mov esi, edx
sub ecx, edi
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x53701c
xor edx, edx
jmp 0x53701e
add edx, esi
cmp edx, ecx
cmovb edx, ecx
lea ecx, [ebp - 0xbc]
push edx
call fcn.0046ae20
mov edx, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xc4]
test ecx, ecx
je 0x53704d
mov byte [ecx], bl
mov ebx, dword [ebp - 0xcc]
lea eax, [esi + 1]
inc ecx
mov dword [ebp - 0xc8], eax
inc ebx
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xcc], ebx
lea ebx, [ebx]
mov al, byte [esi]
inc esi
test al, al
jne 0x537070
sub esi, dword [ebp - 0xc8]
cmp ebx, esi
jb 0x536f60
test edi, edi
je 0x537092
push edi
call fcn.0053c1e0
add esp, 4
mov eax, dword [ebp - 0x2fc]
test eax, eax
je 0x5370a5
push eax
call fcn.0053c1e0
add esp, 4
mov ebx, 0x913
jmp 0x5370da
mov esi, dword [ebp - 0xd0]
lea ecx, [ebp - 0xac]
push 0
push dword [ebp - 0xc8]
push esi
call fcn.0053a930
lea ecx, [ebp - 0xac]
call fcn.00538e10
push esi
call fcn.0053c676
add esp, 4
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xac], 0x582838
mov eax, dword [ebp - 0xac]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x60]
mov dword [ebp + ecx - 0xb0], eax
lea ecx, [ebp - 0xa8]
call fcn.004b59e0
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xac], 0x5808a0
mov eax, dword [ebp - 0xac]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ebp + ecx - 0xb0], eax
lea eax, [ebp - 0x4c]
push eax
mov dword [ebp - 0x4c], 0x580814
call fcn.0053b91f
mov esi, dword [ebp + 8]
add esp, 4
add esi, 0xfffffff0
or ecx, 0xffffffff
lea eax, [esi + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x537163
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0053d3a0
mov esp, ebp
pop ebp
ret 4
push str.invalid_vector_T__subscript
call fcn.0053af06
push str.invalid_vector_T__subscript
call fcn.0053af06
push str.vector_T__too_long
call fcn.0053aed8
push 0x80070057
call fcn.00468960
push str.invalid_vector_T__subscript
call fcn.0053af06
int3