Function at 0x8438e70
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x84f6d56
mov eax, dword fs:[0]
push eax
sub esp, 0x2c8
push ebx
push esi
push edi
mov eax, dword [0x184002c0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], ecx
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov edi, dword [ecx + 0x34]
mov ebx, dword [ecx + 0x20]
mov esi, dword [ecx + 0x1c]
mov dword [ebp - 0x10], eax
mov eax, dword [ecx + 0x30]
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x24], edi
cmp edi, eax
jae 0x8438eca
sub eax, edi
dec eax
jmp 0x8438ecf
mov eax, dword [ecx + 0x2c]
sub eax, edi
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax*4 + 0x10401040]
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp + 0xc]
mov eax, dword [eax*4 + 0x10401040]
mov dword [ebp - 0x30], eax
nop
cmp esi, 0x14
jae 0x8438f14
mov edi, dword [ebp - 0x10]
movzx eax, byte [edx]
mov ecx, esi
shl eax, cl
add esi, 8
dec edi
or ebx, eax
inc edx
cmp esi, 0x14
jb 0x8438ef8
mov dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x2bc]
mov ecx, dword [ebp + 0x10]
and eax, ebx
lea edx, [ecx + eax*8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx]
sub esi, ecx
shr ebx, cl
mov dword [ebp - 0x28], edx
test eax, eax
jne 0x8438f46
mov al, byte [edx + 4]
mov byte [edi], al
inc edi
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
jmp 0x8439106
test al, 0x10
jne 0x8438f7e
lea ebx, [ebx]
test al, 0x40
jne 0x8439128
mov eax, dword [eax*4 + 0x10401040]
and eax, ebx
add eax, dword [edx + 4]
movzx ecx, byte [edx + eax*8 + 1]
lea edx, [edx + eax*8]
movzx eax, byte [edx]
sub esi, ecx
shr ebx, cl
mov dword [ebp - 0x28], edx
test eax, eax
je 0x8438f34
test al, 0x10
je 0x8438f50
mov ecx, dword [ebp - 0x28]
and eax, 0xf
sub esi, eax
mov edx, dword [eax*4 + 0x10401040]
and edx, ebx
add edx, dword [ecx + 4]
mov ecx, eax
shr ebx, cl
mov dword [ebp - 0x34], edx
cmp esi, 0xf
jae 0x8438fc3
mov edx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x10]
movzx eax, byte [edx]
mov ecx, esi
shl eax, cl
add esi, 8
dec edi
or ebx, eax
inc edx
cmp esi, 0xf
jb 0x8438fa4
mov dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + 0x14]
and eax, ebx
lea ecx, [ecx + eax*8]
movzx eax, byte [ecx]
mov dword [ebp - 0x2c], ecx
movzx ecx, byte [ecx + 1]
shr ebx, cl
sub esi, ecx
test al, 0x10
jne 0x843900c
test al, 0x40
jne 0x8439578
mov ecx, dword [ebp - 0x2c]
mov eax, dword [eax*4 + 0x10401040]
and eax, ebx
add eax, dword [ecx + 4]
lea ecx, [ecx + eax*8]
movzx eax, byte [ecx]
mov dword [ebp - 0x2c], ecx
movzx ecx, byte [ecx + 1]
shr ebx, cl
sub esi, ecx
test al, 0x10
je 0x8438fe0
and eax, 0xf
mov dword [ebp - 0x28], eax
cmp esi, eax
jae 0x8439041
mov edx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x10]
lea esp, [esp]
movzx eax, byte [edx]
mov ecx, esi
shl eax, cl
add esi, 8
or ebx, eax
dec edi
mov eax, dword [ebp - 0x28]
inc edx
cmp esi, eax
jb 0x8439020
mov dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x10401040]
mov ecx, dword [ebp - 0x2c]
and eax, ebx
sub dword [ebp - 0x20], edx
add eax, dword [ecx + 4]
mov ecx, dword [ebp - 0x28]
sub esi, ecx
shr ebx, cl
mov ecx, edi
sub ecx, eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x28]
cmp ecx, eax
jae 0x84390e3
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x14]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov eax, dword [edi + 0x28]
sub dword [ebp - 0x2c], eax
mov edi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
add ecx, dword [ebp - 0x2c]
cmp ecx, dword [eax + 0x28]
jb 0x8439083
mov eax, dword [ebp - 0x28]
sub eax, ecx
mov dword [ebp - 0x28], eax
cmp edx, eax
jbe 0x84390c1
sub edx, eax
mov dword [ebp - 0x34], edx
mov edx, eax
mov edi, edi
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edi], al
inc edi
dec edx
jne 0x84390a0
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x34]
mov ecx, dword [eax + 0x28]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edi], al
inc edi
dec edx
jne 0x84390b4
jmp 0x8439103
movzx eax, byte [ecx]
mov byte [edi], al
movzx eax, byte [ecx + 1]
add ecx, 2
mov byte [edi + 1], al
add edi, 2
sub edx, 2
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edi], al
inc edi
dec edx
jne 0x84390d6
jmp 0x8439103
movzx eax, byte [ecx]
mov byte [edi], al
movzx eax, byte [ecx + 1]
add ecx, 2
mov byte [edi + 1], al
add edi, 2
sub edx, 2
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edi], al
inc edi
dec edx
jne 0x84390f8
mov eax, dword [ebp - 0x20]
cmp eax, 0x102
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x10]
jb 0x84398fb
cmp eax, 0xa
jb 0x84398fb
mov edx, dword [ebp - 0x18]
jmp 0x8438ef0
test al, 0x20
je 0x8439175
mov edx, dword [ebp - 0x1c]
mov eax, esi
shr eax, 3
mov ecx, dword [edx + 4]
sub ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
cmp eax, ecx
cmovb ecx, eax
mov eax, dword [ebp - 0x14]
sub edx, ecx
mov dword [eax + 0x20], ebx
lea eax, [ecx*8]
mov ebx, dword [ebp - 0x14]
sub esi, eax
mov eax, dword [ebp - 0x10]
add eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebx + 0x1c], esi
mov dword [ecx + 4], eax
mov eax, edx
sub eax, dword [ecx]
add dword [ecx + 8], eax
mov eax, 1
jmp 0x843993b
mov dword [ebp - 0x2b8], 0x7a45534d
mov dword [ebp - 0x2b4], 0x7234534d
mov dword [ebp - 0x2b0], 0x366b334c
mov dword [ebp - 0x2ac], 0x33304450
mov dword [ebp - 0x2a8], 0x356b5349
mov dword [ebp - 0x2a4], 0x74306a62
mov dword [ebp - 0x2a0], 0x346b5350
mov dword [ebp - 0x29c], 0x79556d4b
mov dword [ebp - 0x298], 0x6851544f
mov dword [ebp - 0x294], 0x396b444e
mov dword [ebp - 0x290], 0x54347847
mov dword [ebp - 0x28c], 0x33496a45
mov dword [ebp - 0x288], 0x3545444b
mov dword [ebp - 0x284], 0x326b784c
mov dword [ebp - 0x280], 0x7430534e
mov dword [ebp - 0x27c], 0x4c597a4d
mov dword [ebp - 0x278], 0x46386848
mov dword [ebp - 0x274], 0x4c516847
mov dword [ebp - 0x270], 0x4b595741
mov dword [ebp - 0x26c], 0x4434694b
mov dword [ebp - 0x268], 0x31386862
mov dword [ebp - 0x264], 0x3177794a
mov dword [ebp - 0x260], 0x68595450
mov dword [ebp - 0x25c], 0x6a6c6843
mov dword [ebp - 0x258], 0x4e4d415a
mov dword [ebp - 0x254], 0x4b676863
mov dword [ebp - 0x250], 0x476b544e
mov dword [ebp - 0x24c], 0x4a38784a
mov dword [ebp - 0x248], 0x4c305446
mov dword [ebp - 0x244], 0x74414142
mov dword [ebp - 0x240], 0x52636a41
mov dword [ebp - 0x23c], 0x56675342
mov dword [ebp - 0x238], 0x7639544f
mov dword [ebp - 0x234], 0x6541774f
mov dword [ebp - 0x230], 0x77636766
mov dword [ebp - 0x22c], 0x63517a41
mov dword [ebp - 0x228], 0x67736e61
mov dword [ebp - 0x224], 0x32597742
mov dword [ebp - 0x220], 0x5063414f
mov dword [ebp - 0x21c], 0x6e636943
mov dword [ebp - 0x218], 0x416f414c
mov dword [ebp - 0x214], 0x44677846
mov dword [ebp - 0x210], 0x44737a63
mov dword [ebp - 0x20c], 0x3063414a
mov dword [ebp - 0x208], 0x33385147
mov dword [ebp - 0x204], 0x4f676d64
mov dword [ebp - 0x200], 0x38645443
mov dword [ebp - 0x1fc], 0x2b77684f
mov dword [ebp - 0x1f8], 0x74454259
mov dword [ebp - 0x1f4], 0x48673350
mov dword [ebp - 0x1f0], 0x32465148
mov dword [ebp - 0x1ec], 0x466f4159
mov dword [ebp - 0x1e8], 0x63734446
mov dword [ebp - 0x1e4], 0x6445584d
mov dword [ebp - 0x1e0], 0x5573534a
mov dword [ebp - 0x1dc], 0x51676842
mov dword [ebp - 0x1d8], 0x766b7a59
mov dword [ebp - 0x1d4], 0x5a38794e
mov dword [ebp - 0x1d0], 0x63595743
mov dword [ebp - 0x1cc], 0x54635347
mov dword [ebp - 0x1c8], 0x63673348
mov dword [ebp - 0x1c4], 0x56456a4d
mov dword [ebp - 0x1c0], 0x6d636849
mov dword [ebp - 0x1bc], 0x51386a45
mov dword [ebp - 0x1b8], 0x6e464448
mov dword [ebp - 0x1b4], 0x62345464
mov dword [ebp - 0x1b0], 0x4a6b445a
mov dword [ebp - 0x1ac], 0x61415346
mov dword [ebp - 0x1a8], 0x33394159
mov dword [ebp - 0x1a4], 0x37387947
mov dword [ebp - 0x1a0], 0x4967784f
mov dword [ebp - 0x19c], 0x76703348
mov dword [ebp - 0x198], 0x4d67424f
mov dword [ebp - 0x194], 0x43737a47
mov dword [ebp - 0x190], 0x6b42514e
mov dword [ebp - 0x18c], 0x2f526849
mov dword [ebp - 0x188], 0x49676950
mov dword [ebp - 0x184], 0x36737763
mov dword [ebp - 0x180], 0x5341694d
mov dword [ebp - 0x17c], 0x6b73774a
mov dword [ebp - 0x178], 0x3373514e
sub esp, 0xc
mov dword [ebp - 0x174], 0x7652514e
mov ecx, esp
mov dword [ebp - 0x170], 0x41414141
lea eax, [ebp - 0x16a]
mov word [ebp - 0x16c], 0x7732
push dword [ebp - 0x30]
mov dword [ecx], 0
push eax
lea eax, [ebp - 0x2b8]
mov dword [ecx + 4], 0
push eax
push 0
mov dword [ecx + 8], 0
call fcn.08405280
lea eax, [ebp - 0x2c8]
push eax
call fcn.0842eba0
add esp, 0x10
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 4], 1
sub eax, ecx
jne 0x8439516
push str.invalid_vector_T__subscript
call fcn.0847ecf2
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c8]
mov dword [edx + 0x18], ecx
test eax, eax
je 0x843952f
push eax
call fcn.0849b460
add esp, 4
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
mov ecx, dword [eax + 4]
mov eax, esi
sub ecx, dword [ebp - 0x10]
shr eax, 3
cmp eax, ecx
cmovb ecx, eax
mov eax, dword [ebp - 0x14]
sub edx, ecx
mov dword [eax + 0x20], ebx
lea eax, [ecx*8]
mov ebx, dword [ebp - 0x14]
sub esi, eax
mov eax, dword [ebp - 0x10]
add eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebx + 0x1c], esi
mov dword [ecx + 4], eax
mov eax, edx
sub eax, dword [ecx]
add dword [ecx + 8], eax
mov eax, 0xfffffffd
jmp 0x843993b
sub esp, 0xc
mov dword [ebp - 0x168], 0x7a45534d
mov ecx, esp
mov dword [ebp - 0x164], 0x7234534d
mov dword [ebp - 0x160], 0x796b334c
mov dword [ebp - 0x15c], 0x6d6f4450
mov dword [ebp - 0x158], 0x3259694d
mov dword [ebp - 0x154], 0x7245484a
mov dword [ebp - 0x150], 0x706f4350
mov dword [ebp - 0x14c], 0x51496a4f
mov dword [ebp - 0x148], 0x4d6f4445
mov dword [ebp - 0x144], 0x32774142
mov dword [ebp - 0x140], 0x426b4461
mov dword [ebp - 0x13c], 0x794a3359
mov dword [ebp - 0x138], 0x586f6d4d
mov dword [ebp - 0x134], 0x724d6842
mov dword [ebp - 0x130], 0x73687a4e
mov dword [ebp - 0x12c], 0x785a6964
mov dword [ebp - 0x128], 0x306b7847
mov dword [ebp - 0x124], 0x47737765
mov dword [ebp - 0x120], 0x74635248
mov dword [ebp - 0x11c], 0x654d6841
mov dword [ebp - 0x118], 0x30396a41
mov dword [ebp - 0x114], 0x4c59434a
mov dword [ebp - 0x110], 0x44344165
mov dword [ebp - 0x10c], 0x6b746a50
mov dword [ebp - 0x108], 0x2f344146
mov dword [ebp - 0x104], 0x7567794f
mov dword [ebp - 0x100], 0x486b6a4b
mov dword [ebp - 0xfc], 0x47736945
mov dword [ebp - 0xf8], 0x304d4447
mov dword [ebp - 0xf4], 0x31304341
mov dword [ebp - 0xf0], 0x3131684b
mov dword [ebp - 0xec], 0x37707850
mov dword [ebp - 0xe8], 0x3134684f
mov dword [ebp - 0xe4], 0x78674450
mov dword [ebp - 0xe0], 0x65736742
mov dword [ebp - 0xdc], 0x2f4a444f
mov dword [ebp - 0xd8], 0x6b737848
mov dword [ebp - 0xd4], 0x64305249
mov dword [ebp - 0xd0], 0x52596d4d
mov dword [ebp - 0xcc], 0x76737946
mov dword [ebp - 0xc8], 0x2f596943
mov dword [ebp - 0xc4], 0x78416741
mov dword [ebp - 0xc0], 0x7542674d
mov dword [ebp - 0xbc], 0x57346a4d
mov dword [ebp - 0xb8], 0x626b524f
mov dword [ebp - 0xb4], 0x38465365
mov dword [ebp - 0xb0], 0x3259674a
mov dword [ebp - 0xac], 0x46675744
mov dword [ebp - 0xa8], 0x7251794a
mov dword [ebp - 0xa4], 0x64736e50
mov dword [ebp - 0xa0], 0x3268684b
mov dword [ebp - 0x9c], 0x6a674147
mov dword [ebp - 0x98], 0x4d343241
mov dword [ebp - 0x94], 0x316f4144
mov dword [ebp - 0x90], 0x3055414f
mov dword [ebp - 0x8c], 0x52633263
mov dword [ebp - 0x88], 0x5673484e
mov dword [ebp - 0x84], 0x6c67674c
mov dword [ebp - 0x80], 0x7741324c
mov dword [ebp - 0x7c], 0x4a736a59
mov dword [ebp - 0x78], 0x7430584b
mov dword [ebp - 0x74], 0x77467a42
mov dword [ebp - 0x70], 0x5541514a
mov dword [ebp - 0x6c], 0x44416941
mov dword [ebp - 0x68], 0x6a38684d
mov dword [ebp - 0x64], 0x7745574b
mov dword [ebp - 0x60], 0x6b454348
mov dword [ebp - 0x5c], 0x6b6c4163
mov dword [ebp - 0x58], 0x775a6749
mov dword [ebp - 0x54], 0x43385248
mov dword [ebp - 0x50], 0x55387848
mov dword [ebp - 0x4c], 0x6f677a45
mov dword [ebp - 0x48], 0x4f73414b
mov dword [ebp - 0x44], 0x7239774c
mov dword [ebp - 0x40], 0x6c38525a
mov dword [ebp - 0x3c], 0x41597a43
mov dword [ebp - 0x38], 0x4f444141
mov dword [ecx], 0
mov dword [ecx + 4], 0
push dword [ebp - 0x30]
lea eax, [ebp - 0x34]
mov dword [ecx + 8], 0
push eax
lea eax, [ebp - 0x168]
push eax
push 0
call fcn.08405280
lea eax, [ebp - 0x2d4]
push eax
call fcn.0842eba0
add esp, 0x10
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 4], 0
sub eax, ecx
jne 0x8439898
push str.invalid_vector_T__subscript
call fcn.0847ecf2
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x18], ecx
mov eax, dword [ebp - 0x2d4]
test eax, eax
je 0x843952f
push eax
call fcn.0849b460
mov eax, dword [ebp - 0x1c]
add esp, 4
mov edx, dword [ebp - 0x18]
mov ecx, dword [eax + 4]
mov eax, esi
sub ecx, dword [ebp - 0x10]
shr eax, 3
cmp eax, ecx
cmovb ecx, eax
mov eax, dword [ebp - 0x14]
sub edx, ecx
mov dword [eax + 0x20], ebx
lea eax, [ecx*8]
mov ebx, dword [ebp - 0x14]
sub esi, eax
mov eax, dword [ebp - 0x10]
add eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebx + 0x1c], esi
mov dword [ecx + 4], eax
mov eax, edx
sub eax, dword [ecx]
add dword [ecx + 8], eax
mov eax, 0xfffffffd
jmp 0x843993b
mov edx, dword [ebp - 0x1c]
mov ecx, dword [edx + 4]
mov edx, dword [ebp - 0x18]
sub ecx, eax
mov eax, esi
shr eax, 3
cmp eax, ecx
cmovb ecx, eax
mov eax, dword [ebp - 0x14]
sub edx, ecx
mov dword [eax + 0x20], ebx
lea eax, [ecx*8]
mov ebx, dword [ebp - 0x14]
sub esi, eax
mov eax, dword [ebp - 0x10]
add eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebx + 0x1c], esi
mov dword [ecx + 4], eax
mov eax, edx
sub eax, dword [ecx]
add dword [ecx + 8], eax
xor eax, eax
mov dword [ecx], edx
mov dword [ebx + 0x34], edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret