Function at 0x1006a0d0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x194
mov eax, dword [0x1020a0c0]
xor eax, esp
mov dword [esp + 0x190], eax
push ebx
push edi
mov ebx, ecx
mov dword [esp + 0x38], ebx
mov eax, dword [esp + 0x1a0]
xor edx, edx
mov dword [esp + 0x98], eax
mov ecx, dword [esp + 0x1a4]
mov dword [esp + 0x94], ecx
xor ecx, ecx
mov ecx, dword [eax]
mov eax, ecx
neg eax
mov dword [esp + 8], edx
test ecx, ecx
mov dword [esp + 0x2c], edx
mov edi, dword [ebx + 0x1c]
cmovns eax, ecx
movzx eax, ax
mov ecx, ebx
mov dword [esp + 0x44], eax
lea eax, [esp + 0x4c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], edx
mov edx, 0x101e0304
push eax
mov dword [esp + 0x20], edi
call fcn.1004b7d0
test eax, eax
jne 0x1006a1a2
mov eax, dword [esp + 0x50]
mov dword [esp + 0x24], eax
push ebp
push esi
cmp eax, 0x774f4632
je 0x1006a19b
mov edx, dword [esp + 0x5c]
cmp edx, dword [ebx + 4]
jne 0x1006a19b
mov ax, word [esp + 0x60]
test ax, ax
je 0x1006a19b
movzx ebp, ax
lea eax, [ebp*4]
add eax, ebp
lea eax, [eax*4 + 0x30]
cmp eax, edx
jae 0x1006a19b
mov ecx, dword [esp + 0x6c]
mov esi, dword [esp + 0x70]
test ecx, ecx
jne 0x1006a1bb
test esi, esi
jne 0x1006a19b
cmp dword [esp + 0x74], esi
je 0x1006a1c6
mov eax, 8
pop esi
pop ebp
mov ecx, dword [esp + 0x198]
pop edi
pop ebx
xor ecx, esp
call fcn.1019d163
add esp, 0x194
ret 8
test esi, esi
je 0x1006a1c6
cmp dword [esp + 0x74], 0
je 0x1006a19b
cmp ecx, edx
jae 0x1006a19b
mov eax, edx
sub eax, ecx
cmp eax, esi
jb 0x1006a19b
mov ecx, dword [esp + 0x78]
mov esi, dword [esp + 0x7c]
test ecx, ecx
jne 0x1006a1e2
test esi, esi
jne 0x1006a19b
cmp ecx, edx
jae 0x1006a19b
mov eax, edx
sub eax, ecx
cmp eax, esi
jb 0x1006a19b
xor eax, eax
xor esi, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x94], eax
test ebp, ebp
je 0x1006a7ad
mov eax, dword [edi + 4]
mov edx, ebp
shl edx, 5
mov ecx, edi
call eax
mov edi, eax
mov dword [esp + 0x14], eax
test edi, edi
mov ecx, 0x40
cmove esi, ecx
test esi, esi
jne 0x1006a7a4
mov dword [esp + 0x14], edi
test edi, edi
je 0x1006a247
mov eax, ebp
shl eax, 5
push eax
push esi
push edi
call fcn.1019f050
add esp, 0xc
mov dword [esp + 0x14], edi
jmp 0x1006a255
test esi, esi
jne 0x1006a7a4
mov dword [esp + 0x14], eax
mov edi, eax
mov eax, dword [esp + 0x24]
lea edx, [ebp*4]
mov ecx, eax
xor esi, esi
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov eax, 0x40
test ecx, ecx
mov dword [esp + 0x10], ecx
cmove esi, eax
mov eax, ecx
mov dword [esp + 0x3c], eax
test esi, esi
jne 0x1006a2b0
mov dword [esp + 0x3c], ecx
test ecx, ecx
je 0x1006a2b0
lea eax, [ebp*4]
push eax
push esi
push ecx
call fcn.1019f050
mov edx, dword [esp + 0x1c]
add esp, 0xc
xor eax, eax
mov esi, edx
mov dword [esp + 0x44], eax
movzx eax, word [esp + 0x60]
jmp 0x1006a2e3
mov dword [esp + 0x20], esi
mov edx, eax
mov dword [esp + 0x10], edx
test esi, esi
jne 0x1006a7a6
movzx ecx, word [esp + 0x60]
xor eax, eax
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x44], eax
mov eax, ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edi
test ecx, ecx
je 0x1006a7c1
mov ecx, dword [esp + 0x14]
lea edi, [ecx + 4]
nop word [eax + eax]
mov dword [esp + 0x48], eax
mov ebp, ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x14], ecx
mov ecx, dword [ebx + 8]
mov dword [esp + 0x50], ebp
mov dword [esp + 0x98], esi
mov dword [esp + 0x1c], edx
mov byte [esp + 0x38], 0
mov dword [esp + 0x20], 0
test eax, eax
je 0x1006a348
push 1
lea edx, [esp + 0x3c]
push edx
mov edx, ecx
mov ecx, ebx
call eax
cmp eax, 1
jne 0x1006a790
mov al, byte [esp + 0x38]
mov edx, dword [esp + 0x1c]
jmp 0x1006a356
cmp ecx, dword [ebx + 4]
jae 0x1006a790
mov eax, dword [ebx]
mov al, byte [ecx + eax]
inc dword [ebx + 8]
lea ecx, [edi - 4]
mov byte [ecx], al
and al, 0x3f
cmp al, 0x3f
jne 0x1006a385
lea edx, [esp + 0x20]
mov ecx, ebx
call fcn.1004b750
mov esi, dword [esp + 0x20]
mov dword [edi], eax
test esi, esi
jne 0x1006a749
lea ecx, [edi - 4]
jmp 0x1006a656
mov dword [esp + 0xa4], 0x636d6170
mov dword [esp + 0xa8], 0x68656164
mov dword [esp + 0xac], 0x68686561
mov dword [esp + 0xb0], 0x686d7478
mov dword [esp + 0xb4], 0x6d617870
mov dword [esp + 0xb8], 0x6e616d65
mov dword [esp + 0xbc], 0x4f532f32
mov dword [esp + 0xc0], 0x706f7374
mov dword [esp + 0xc4], 0x63767420
mov dword [esp + 0xc8], 0x6670676d
mov dword [esp + 0xcc], 0x676c7966
mov dword [esp + 0xd0], 0x6c6f6361
mov dword [esp + 0xd4], 0x70726570
mov dword [esp + 0xd8], 0x43464620
mov dword [esp + 0xdc], 0x564f5247
mov dword [esp + 0xe0], 0x45424454
mov dword [esp + 0xe4], 0x45424c43
mov dword [esp + 0xe8], 0x67617370
mov dword [esp + 0xec], 0x68646d78
mov dword [esp + 0xf0], 0x6b65726e
mov dword [esp + 0xf4], 0x4c545348
mov dword [esp + 0xf8], 0x50434c54
mov dword [esp + 0xfc], 0x56444d58
mov dword [esp + 0x100], 0x76686561
mov dword [esp + 0x104], 0x766d7478
mov dword [esp + 0x108], 0x42415345
mov dword [esp + 0x10c], 0x47444546
mov dword [esp + 0x110], 0x47504f53
mov dword [esp + 0x114], 0x47535542
mov dword [esp + 0x118], 0x45425343
mov dword [esp + 0x11c], 0x4a535446
mov dword [esp + 0x120], 0x4d415448
mov dword [esp + 0x124], 0x43424454
mov dword [esp + 0x128], 0x43424c43
mov dword [esp + 0x12c], 0x434f4c52
mov dword [esp + 0x130], 0x4350414c
mov dword [esp + 0x134], 0x53564720
mov dword [esp + 0x138], 0x73626978
mov dword [esp + 0x13c], 0x61636e74
mov dword [esp + 0x140], 0x61766172
mov dword [esp + 0x144], 0x62646174
mov dword [esp + 0x148], 0x626c6f63
mov dword [esp + 0x14c], 0x62736c6e
mov dword [esp + 0x150], 0x63766172
mov dword [esp + 0x154], 0x66647363
mov dword [esp + 0x158], 0x66656174
mov dword [esp + 0x15c], 0x666d7478
mov dword [esp + 0x160], 0x66766172
mov dword [esp + 0x164], 0x67766172
mov dword [esp + 0x168], 0x68737479
mov dword [esp + 0x16c], 0x6a757374
mov dword [esp + 0x170], 0x6c636172
mov dword [esp + 0x174], 0x6d6f7274
mov dword [esp + 0x178], 0x6d6f7278
mov dword [esp + 0x17c], 0x6f706264
mov dword [esp + 0x180], 0x70726f70
mov dword [esp + 0x184], 0x7472616b
mov dword [esp + 0x188], 0x5a617066
mov dword [esp + 0x18c], 0x53696c66
mov dword [esp + 0x190], 0x476c6174
mov dword [esp + 0x194], 0x476c6f63
mov dword [esp + 0x198], 0x46656174
mov dword [esp + 0x19c], 0x53696c6c
cmp al, 0x3e
ja 0x1006a778
movzx eax, al
mov eax, dword [esp + eax*4 + 0xa4]
mov dword [edi], eax
test eax, eax
je 0x1006a77e
mov al, byte [ecx]
xor ebx, ebx
mov ecx, dword [edi]
shr al, 6
cmp ecx, 0x676c7966
je 0x1006a67a
cmp ecx, 0x6c6f6361
je 0x1006a67a
test al, al
je 0x1006a684
mov ebx, 0x100
jmp 0x1006a684
test al, al
mov ecx, 0x100
cmove ebx, ecx
mov ecx, dword [esp + 0x40]
lea edx, [edi + 4]
movzx eax, al
or ebx, eax
call fcn.1006a040
mov esi, eax
mov dword [esp + 0x20], esi
test esi, esi
jne 0x1006a749
mov eax, dword [edi + 4]
mov esi, dword [esp + 0x98]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x3c], esi
test ebx, 0x100
je 0x1006a6ff
mov ecx, dword [esp + 0x40]
lea edx, [edi + 8]
call fcn.1006a040
mov esi, eax
mov dword [esp + 0x20], esi
test esi, esi
jne 0x1006a75f
cmp dword [edi], 0x6c6f6361
mov edx, dword [esp + 0x98]
mov esi, edx
mov ecx, dword [esp + 0x48]
mov eax, ecx
mov dword [esp + 0x3c], esi
jne 0x1006a6ff
cmp dword [edi + 8], 0
mov dword [esp + 0x3c], edx
jne 0x1006a75a
mov ebp, dword [esp + 0x34]
mov ecx, dword [edi + 8]
lea edx, [ecx + ebp]
cmp edx, ebp
jb 0x1006a75a
mov dword [edi + 0xc], ebx
mov ebx, dword [esp + 0x44]
mov dword [edi + 0x14], ecx
lea ecx, [edi - 4]
mov dword [edi + 0x10], ebp
add edi, 0x20
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x1c]
mov dword [esi + ebx*4], ecx
inc ebx
mov ecx, dword [esp + 0x50]
cmp ebx, eax
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
jge 0x1006a772
jmp 0x1006a2f0
mov edx, dword [esp + 0x1c]
mov ecx, ebp
mov dword [esp + 0x10], edx
xor edi, edi
jmp 0x1006a987
mov esi, 8
mov edx, dword [esp + 0x1c]
xor edi, edi
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x10], edx
jmp 0x1006a987
mov dword [esp + 0x14], ecx
jmp 0x1006a7bd
mov dword [edi], 0
mov esi, 8
mov dword [esp + 0x10], edx
mov ecx, ebp
xor edi, edi
jmp 0x1006a987
mov esi, 0x55
mov byte [edi - 4], 0
mov edx, dword [esp + 0x10]
xor edi, edi
jmp 0x1006a983
xor edx, edx
xor edi, edi
jmp 0x1006a983
xor esi, esi
mov dword [esp + 0x14], eax
mov dword [esp + 0x3c], esi
xor edx, edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], edx
mov di, word [esp + 0x60]
movzx eax, di
mov eax, dword [esi + eax*4 - 4]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0x18]
add eax, ecx
mov dword [esp + 0x80], eax
cmp eax, ecx
jae 0x1006a7ec
mov esi, 8
xor edi, edi
jmp 0x1006a983
mov eax, 1
xor esi, esi
cmp dword [esp + 0x2c], 0x74746366
mov word [esp + 0x8c], ax
jne 0x1006aa7c
lea edx, [esp + 0x20]
mov ecx, ebx
call fcn.1004b750
mov esi, dword [esp + 0x20]
mov dword [esp + 0x88], eax
test esi, esi
jne 0x1006a799
cmp eax, 0x10000
je 0x1006a845
cmp eax, 0x20000
je 0x1006a845
mov edx, dword [esp + 0x10]
mov esi, 8
xor edi, edi
jmp 0x1006a983
lea edx, [esp + 0x8c]
mov ecx, ebx
call fcn.10069ea0
mov esi, eax
test esi, esi
jne 0x1006a866
cmp word [esp + 0x8c], ax
jne 0x1006a87a
lea esi, [eax + 8]
mov edi, dword [esp + 0x94]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x18], edi
jmp 0x1006a983
movzx eax, word [esp + 0x8c]
xor esi, esi
mov dword [esp + 0x34], eax
test eax, eax
je 0x1006aa5e
lea edi, [eax + eax*2]
mov eax, dword [esp + 0x24]
shl edi, 2
mov ecx, eax
mov edx, edi
mov eax, dword [eax + 4]
call eax
test eax, eax
mov dword [esp + 0x18], eax
mov ecx, 0x40
mov ebp, eax
cmove esi, ecx
test esi, esi
jne 0x1006a8dc
test eax, eax
je 0x1006a8dc
push edi
mov edi, eax
push esi
push edi
call fcn.1019f050
add esp, 0xc
xor eax, eax
mov dword [esp + 0x2c], eax
movzx eax, word [esp + 0x8c]
mov dword [esp + 0x34], eax
jmp 0x1006a900
mov edi, ebp
xor eax, eax
mov dword [esp + 0x18], edi
test esi, esi
jne 0x1006af79
mov dword [esp + 0x2c], eax
movzx eax, word [esp + 0x8c]
test eax, eax
je 0x1006aa62
add ebp, 4
mov edx, ebp
mov ecx, ebx
call fcn.10069ea0
mov esi, eax
mov dword [esp + 0x20], esi
test esi, esi
jne 0x1006a97b
lea edx, [esp + 0x20]
mov ecx, ebx
call fcn.1004b750
mov esi, dword [esp + 0x20]
mov dword [ebp - 4], eax
test esi, esi
jne 0x1006a97b
movzx eax, word [ebp]
test eax, eax
je 0x1006a9ab
lea ebx, [eax + eax]
mov eax, dword [esp + 0x24]
mov ecx, eax
mov edx, ebx
mov eax, dword [eax + 4]
call eax
mov edi, eax
mov eax, 0x40
test edi, edi
cmove esi, eax
mov eax, edi
mov dword [esp + 0x48], esi
test esi, esi
jne 0x1006a974
test edi, edi
je 0x1006a974
push ebx
push esi
push edi
call fcn.1019f050
mov eax, esi
mov dword [ebp + 4], edi
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x1006a9b2
mov dword [ebp + 4], eax
test esi, esi
je 0x1006a9b2
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
xor eax, eax
xor ebx, ebx
xor ebp, ebp
test ecx, ecx
je 0x1006af86
mov ebp, dword [esp + 0x24]
mov edx, ecx
mov ecx, ebp
mov eax, dword [ebp + 8]
call eax
mov edx, dword [esp + 0x10]
jmp 0x1006af92
mov dword [esp + 0x20], esi
mov dword [ebp + 4], esi
xor eax, eax
mov dword [esp + 0x44], 0
xor edi, edi
xor ebx, ebx
cmp ax, word [ebp]
jae 0x1006aa2c
nop word [eax + eax]
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x38]
call fcn.10069ea0
mov esi, eax
test esi, esi
jne 0x1006a97b
mov cx, word [esp + 0x38]
cmp cx, word [esp + 0x60]
jae 0x1006aa54
mov eax, dword [ebp + 4]
mov word [eax + ebx*2], cx
mov eax, dword [esp + 0x3c]
movzx ecx, cx
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 4]
cmp eax, 0x6c6f6361
jne 0x1006aa47
mov edi, ecx
mov ecx, dword [esp + 0x44]
movzx eax, word [ebp]
inc ebx
cmp ebx, eax
jb 0x1006a9d0
test ecx, ecx
jne 0x1006aa21
test edi, edi
je 0x1006aa2c
cmp ecx, edi
ja 0x1006aa54
sub edi, ecx
cmp edi, 1
jne 0x1006aa54
mov edi, dword [esp + 0x2c]
add ebp, 0xc
mov ebx, dword [esp + 0x40]
inc edi
mov dword [esp + 0x2c], edi
cmp edi, dword [esp + 0x34]
jge 0x1006aa62
jmp 0x1006a903
cmp eax, 0x676c7966
jne 0x1006aa0c
mov dword [esp + 0x44], ecx
jmp 0x1006aa10
mov esi, 8
jmp 0x1006a97b
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x58]
mov esi, dword [esp + 0x88]
mov edx, dword [esp + 0x10]
mov di, word [esp + 0x60]
mov dword [esp + 0x2c], eax
jmp 0x1006aa80
mov dword [esp + 0x18], esi
mov ecx, dword [esp + 0x68]
mov ebp, dword [esp + 0x5c]
add ecx, 3
add ecx, dword [ebx + 8]
and ecx, 0xfffffffc
cmp ecx, ebp
jbe 0x1006aa9f
mov esi, 8
jmp 0x1006a97f
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x1006aac1
cmp ecx, eax
je 0x1006aab5
mov esi, 8
jmp 0x1006a97f
mov ecx, dword [esp + 0x70]
add ecx, 3
add ecx, eax
and ecx, 0xfffffffc
mov eax, dword [esp + 0x78]
test eax, eax
je 0x1006aae3
cmp ecx, eax
je 0x1006aad7
mov esi, 8
jmp 0x1006a97f
mov ecx, dword [esp + 0x7c]
add ecx, 3
add ecx, eax
and ecx, 0xfffffffc
lea eax, [ebp + 3]
and eax, 0xfffffffc
cmp ecx, eax
je 0x1006aaf7
mov esi, 8
jmp 0x1006a97f
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
movzx eax, word [esp + 0x8c]
mov ebx, dword [esp + 0x4c]
mov dword [ecx], eax
mov edx, dword [edx]
test edx, edx
lea ecx, [ebx - 1]
cmovns ecx, ebx
cmp ecx, eax
jl 0x1006ab31
test edx, edx
js 0x1006ab2f
mov esi, 6
jmp 0x1006a97b
xor ecx, ecx
test esi, esi
je 0x1006acd8
lea eax, [ecx + ecx*2]
xor esi, esi
mov ecx, dword [esp + 0x18]
lea ebx, [ecx + eax*4]
movzx eax, word [ebx + 4]
test eax, eax
je 0x1006ab9e
lea ebp, [eax*4]
mov eax, dword [esp + 0x24]
mov ecx, eax
mov edx, ebp
mov eax, dword [eax + 4]
call eax
mov edi, eax
mov eax, 0x40
test edi, edi
mov dword [esp + 0x1c], edi
cmove esi, eax
test esi, esi
jne 0x1006a97b
mov dword [esp + 0x1c], edi
test edi, edi
je 0x1006ab90
push ebp
push esi
push edi
call fcn.1019f050
add esp, 0xc
mov esi, edi
jmp 0x1006aba0
test esi, esi
jne 0x1006a97b
mov esi, dword [esp + 0x1c]
jmp 0x1006aba4
xor esi, esi
mov dword [esp + 0x1c], esi
movzx eax, word [ebx + 4]
xor edi, edi
xor ecx, ecx
mov edx, eax
cmp di, ax
jae 0x1006abd6
mov edi, dword [esp + 0x3c]
nop word [eax + eax]
mov eax, dword [ebx + 8]
movzx eax, word [eax + ecx*2]
mov eax, dword [edi + eax*4]
mov dword [esi + ecx*4], eax
inc ecx
movzx edx, word [ebx + 4]
cmp ecx, edx
jl 0x1006abc0
mov ecx, dword [esp + 0x3c]
xor esi, esi
movzx eax, word [esp + 0x60]
movzx ebp, dx
mov dword [esp + 0x10], ecx
test ebp, ebp
je 0x1006ac75
lea edx, [ebp*4]
test eax, eax
jne 0x1006ac30
mov eax, dword [esp + 0x24]
mov ecx, eax
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov eax, 0x40
test ecx, ecx
mov dword [esp + 0x10], ecx
mov edi, ecx
cmove esi, eax
test esi, esi
jne 0x1006ac20
test edi, edi
jne 0x1006ac56
mov edx, edi
mov dword [esp + 0x10], edx
test esi, esi
jne 0x1006a97f
jmp 0x1006ac8c
push ecx
push edx
lea edx, [eax*4]
mov eax, dword [esp + 0x2c]
mov ecx, eax
mov eax, dword [eax + 0xc]
call eax
mov edi, eax
test edi, edi
jne 0x1006ac52
lea esi, [eax + 0x40]
jmp 0x1006a97b
mov dword [esp + 0x10], edi
movzx eax, word [esp + 0x60]
cmp ebp, eax
jbe 0x1006ac20
sub ebp, eax
lea eax, [edi + eax*4]
shl ebp, 2
push ebp
push 0
push eax
call fcn.1019f050
add esp, 0xc
jmp 0x1006ac8c
test ecx, ecx
je 0x1006ac86
mov eax, dword [esp + 0x24]
mov edx, ecx
mov ecx, eax
mov eax, dword [eax + 8]
call eax
xor edi, edi
mov dword [esp + 0x10], esi
mov edx, dword [esp + 0x1c]
xor eax, eax
xor ecx, ecx
cmp ax, word [ebx + 4]
jae 0x1006acb2
mov esi, edx
sub esi, edi
nop
mov eax, dword [esi + edi]
lea edi, [edi + 4]
mov dword [edi - 4], eax
inc ecx
movzx eax, word [ebx + 4]
cmp ecx, eax
jl 0x1006aca0
test edx, edx
je 0x1006acc1
mov eax, dword [esp + 0x24]
mov ecx, eax
mov eax, dword [eax + 8]
call eax
mov eax, dword [ebx]
mov di, word [ebx + 4]
mov ebp, dword [esp + 0x5c]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x58], eax
mov word [esp + 0x60], di
mov ecx, dword [esp + 0x64]
movzx eax, di
mov dword [esp + 0x34], eax
shl eax, 4
mov dword [esp + 0x4c], eax
lea edi, [eax + 0xc]
mov ebx, edi
cmp ecx, edi
jbe 0x1006ad1a
mov eax, ecx
shr eax, 6
cmp eax, ebp
jbe 0x1006ad03
mov edi, ebp
shl edi, 6
jmp 0x1006ad05
mov edi, ecx
mov ebx, edi
cmp edi, 0x4000000
jb 0x1006ad1a
mov edi, 0x4000000
xor esi, esi
mov ebx, edi
jmp 0x1006ad22
xor esi, esi
xor ebp, ebp
test ebx, ebx
jle 0x1006ad57
mov eax, dword [esp + 0x24]
mov edx, ebx
mov ecx, eax
mov eax, dword [eax + 4]
call eax
mov ebp, eax
test ebp, ebp
jne 0x1006ad3a
mov esi, 0x40
mov dword [esp + 0x28], ebp
test esi, esi
jne 0x1006ad79
test ebp, ebp
je 0x1006ad79
test ebx, ebx
jle 0x1006ad79
push ebx
push esi
push ebp
call fcn.1019f050
add esp, 0xc
jmp 0x1006ad85
jns 0x1006ad3a
mov edx, dword [esp + 0x10]
xor ebp, ebp
mov ecx, dword [esp + 0x14]
xor ebx, ebx
mov edi, dword [esp + 0x18]
mov esi, 6
mov dword [esp + 0x28], ebp
xor eax, eax
jmp 0x1006a98d
mov dword [esp + 0x28], ebp
test esi, esi
jne 0x1006af60
mov ebx, dword [esp + 0x24]
mov edx, 0x28
mov ecx, ebx
mov eax, dword [ebx + 4]
call eax
mov dword [esp + 0x30], eax
test eax, eax
jne 0x1006adb7
mov edx, dword [esp + 0x10]
lea esi, [eax + 0x40]
mov ecx, dword [esp + 0x14]
xor ebx, ebx
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x28]
jmp 0x1006a98d
mov ecx, dword [esp + 0x2c]
lea edx, [ebp + 1]
xorps xmm0, xmm0
mov esi, eax
movups xmmword [eax], xmm0
mov dword [esp + 0x30], esi
movups xmmword [eax + 0x10], xmm0
movq qword [eax + 0x20], xmm0
mov eax, ecx
shr eax, 0x18
mov byte [ebp], al
mov eax, ecx
mov ebp, dword [esp + 0x34]
shr eax, 0x10
mov byte [edx], al
mov al, byte [esp + 0x58]
shr ecx, 8
cmp word [esp + 0x60], 0
mov byte [edx + 1], cl
mov byte [edx + 2], al
je 0x1006ae66
mov eax, ebp
mov dword [esp + 0x30], esi
xor ecx, ecx
test eax, eax
je 0x1006ae15
mov dword [esp + 0x30], esi
nop dword [eax + eax]
inc ecx
shr eax, 1
jne 0x1006ae10
mov ebx, dword [esp + 0x4c]
dec ecx
mov eax, 1
shl eax, cl
shl eax, 4
sub ebx, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x60]
shr eax, 8
mov byte [edx + 3], al
mov al, byte [esp + 0x60]
mov byte [edx + 4], al
mov eax, dword [esp + 0x34]
shr eax, 8
mov byte [edx + 5], al
mov eax, dword [esp + 0x34]
mov byte [edx + 6], al
mov eax, ecx
shr eax, 8
mov byte [edx + 7], al
mov eax, ebx
shr eax, 8
mov byte [edx + 0xa], bl
mov ebx, dword [esp + 0x24]
mov byte [edx + 8], cl
mov byte [edx + 9], al
mov edx, dword [esp + 0x10]
push 0x10069550
push 4
push ebp
push edx
call fcn.101aa410
mov eax, dword [esp + 0x90]
add esp, 0x10
cmp eax, 1
jae 0x1006aea7
mov esi, 8
xor ebx, ebx
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x28]
jmp 0x1006a98d
cmp eax, edi
ja 0x1006ae87
xor ecx, ecx
xor esi, esi
mov dword [esp + 0x2c], ecx
test eax, eax
jle 0x1006aed6
mov edx, eax
mov ecx, ebx
mov eax, dword [ebx + 4]
call eax
mov ebx, eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x2c], ebx
test ebx, ebx
jne 0x1006aee1
lea esi, [ebx + 0x40]
jmp 0x1006aee1
jns 0x1006aedf
mov esi, 6
jmp 0x1006ae8c
xor ebx, ebx
test esi, esi
jne 0x1006aefa
test ebx, ebx
je 0x1006aefa
test eax, eax
jle 0x1006aefa
push eax
push esi
push ebx
call fcn.1019f050
add esp, 0xc
jmp 0x1006af02
mov dword [esp + 0x2c], ebx
test esi, esi
jne 0x1006ae8e
mov ebx, dword [esp + 0x40]
mov ecx, ebx
mov edx, dword [esp + 0x68]
call fcn.1004b680
mov esi, eax
test esi, esi
jne 0x1006af43
lea esi, [eax + 7]
cmp dword [ebx + 0x14], eax
je 0x1006af35
mov edx, dword [ebx]
mov eax, dword [ebx + 0x1c]
test edx, edx
je 0x1006af2f
mov ecx, eax
mov eax, dword [eax + 8]
call eax
mov dword [ebx], 0
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x24], 0
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x28]
jmp 0x1006a98d
mov edx, dword [esp + 0x10]
xor ebx, ebx
mov ecx, dword [esp + 0x14]
xor eax, eax
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x28]
jmp 0x1006a98d
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x1006a989
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x30], eax
test edx, edx
je 0x1006af9d
mov eax, dword [ebp + 8]
mov ecx, ebp
call eax
test ebx, ebx
je 0x1006afaa
mov eax, dword [ebp + 8]
mov edx, ebx
mov ecx, ebp
call eax
test edi, edi
je 0x1006afe8
movzx ebx, word [esp + 0x8c]
test ebx, ebx
je 0x1006afdf
add edi, 8
nop dword [eax]
mov edx, dword [edi]
test edx, edx
je 0x1006afcd
mov eax, dword [ebp + 8]
mov ecx, ebp
call eax
mov dword [edi], 0
add edi, 0xc
sub ebx, 1
jne 0x1006afc0
mov edi, dword [esp + 0x18]
mov eax, dword [ebp + 8]
mov edx, edi
mov ecx, ebp
call eax
test esi, esi
je 0x1006b017
mov edx, dword [esp + 0x28]
test edx, edx
je 0x1006affb
mov eax, dword [ebp + 8]
mov ecx, ebp
call eax
mov ebx, dword [esp + 0x30]
test ebx, ebx
je 0x1006b017
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x1006b00e
mov ecx, ebx
call eax
mov eax, dword [ebp + 8]
mov edx, ebx
mov ecx, ebp
call eax
mov eax, esi
jmp 0x1006a1a0