Function at 0x10053e10
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x400
call 0x10053e24
pop eax
mov dword [esp + 0x3c], ecx
mov ecx, dword [edx + 4]
mov dword [esp + 0x24], edx
mov dword [esp + 0x30], eax
mov eax, dword [edx + 8]
mov dword [esp + 0x2c], ecx
cmp eax, ecx
jae 0x10053e82
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x2c]
inc eax
mov edi, 0x800013
lea edx, [ecx + 8]
neg esi
mov dword [esp + 0x1c], edx
mov edx, dword [ecx]
nop dword [eax + eax]
movzx ecx, byte [edx + eax - 1]
lea ebx, [ecx - 9]
cmp ebx, 0x17
ja 0x10053eb2
bt edi, ebx
jae 0x10053eb2
mov ecx, dword [esp + 0x1c]
lea ebx, [esi + eax + 1]
mov dword [ecx], eax
inc eax
cmp ebx, 1
jne 0x10053e60
mov dword [esp + 0x128], 5
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x128]
call fcn.1003aa40
mov ecx, dword [esp + 0x3c]
mov dword [ecx], eax
mov dword [ecx + 0x94], 0
jmp 0x10055592
cmp ecx, 0x5b
je 0x10054d11
mov edi, dword [esp + 0x24]
cmp ecx, 0x7b
jne 0x1005572d
dec byte [edi + 0x18]
je 0x1005569d
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0x108], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xe8], 0
mov dword [esp + 0x118], 0
mov dword [esp + 0x1dc], 0
cmp eax, ebx
mov dword [ecx], eax
jae 0x10054d58
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x68], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x80], 0
mov dword [esp], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x1d4], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x28], 0
lea ecx, [ecx + 0xc]
mov dword [esp + 0x6c], ecx
mov ecx, dword [esp + 0x24]
mov edi, dword [ecx]
nop
movzx edx, byte [edi + eax]
movzx ecx, dl
lea esi, [ecx - 9]
cmp esi, 0x23
ja 0x1005402c
mov ecx, dword [esi*4 + 0x10056ef8]
add ecx, dword [esp + 0x30]
jmp ecx
cmp ecx, 0x7d
je 0x10055775
test byte [esp + 0x28], 1
jne 0x10055e07
mov edi, dword [esp + 0x24]
cmp dl, 0x22
jne 0x10055d08
inc eax
mov dword [edi + 8], eax
mov dword [edi + 0x14], 0
push dword [esp + 0x6c]
push edi
lea eax, [esp + 0x130]
push eax
call fcn.10118780
add esp, 0xc
mov esi, dword [esp + 0x12c]
cmp dword [esp + 0x128], 2
je 0x10054d77
mov ebx, dword [esp + 0x130]
lea eax, [ebx - 1]
cmp eax, 0x16
ja 0x10054610
mov eax, dword [eax*4 + 0x10056f88]
add eax, dword [esp + 0x30]
jmp eax
mov ecx, edi
call fcn.1003b9b0
mov esi, eax
mov al, 1
test esi, esi
mov dword [esp + 0x28], eax
jne 0x10054d7d
mov dword [edi + 0x14], 0
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
cmp eax, ecx
mov dword [esp + 0x2c], ecx
jae 0x10055b62
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x38], 0
mov edx, dword [ecx]
mov esi, dword [esp + 0x2c]
add eax, 5
neg esi
nop word [eax + eax]
movzx ecx, byte [edx + eax - 5]
movzx edi, cl
mov ebx, ecx
lea ecx, [edi - 9]
cmp ecx, 0x24
ja 0x10054697
mov ecx, dword [ecx*4 + 0x10056fe4]
add ecx, dword [esp + 0x30]
jmp ecx
add edi, 0xffffffa5
cmp edi, 0x20
ja 0x100548c3
mov ecx, dword [edi*4 + 0x10057078]
add ecx, dword [esp + 0x30]
jmp ecx
add bl, 0xd0
cmp bl, 0xa
jae 0x100561c0
mov edi, dword [esp + 0x24]
mov ecx, edi
call fcn.1003b040
mov esi, eax
test eax, eax
jne 0x10054d7d
test byte [esp + 0x38], 1
mov dl, 1
je 0x100548f4
movzx ebx, byte [esp + 0x34]
jmp 0x1005490d
mov eax, dword [edi + 0x14]
test eax, eax
je 0x10054cf5
lea ecx, [eax - 1]
mov dword [edi + 0x14], ecx
mov ecx, dword [edi + 0xc]
movzx ebx, byte [ecx + eax - 1]
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
cmp eax, ecx
mov dword [esp + 0x2c], ecx
jae 0x10055f05
mov ecx, edi
mov dword [esp + 0x38], edx
mov edi, dword [edi + 0x14]
mov byte [esp + 0x34], bl
mov edx, dword [ecx]
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x24c], ecx
nop dword [eax + eax]
movzx esi, byte [edx + eax]
lea ecx, [esi - 9]
cmp ecx, 0x23
ja 0x1005496b
mov ecx, dword [ecx*4 + 0x100570fc]
add ecx, dword [esp + 0x30]
jmp ecx
cmp esi, 0x5d
je 0x1005497e
cmp esi, 0x7d
jne 0x100549bc
cmp byte [esp + 0x34], 0x7b
je 0x10054985
jmp 0x100549bc
cmp byte [esp + 0x34], 0x5b
jne 0x100549bc
mov ecx, dword [esp + 0x1c]
inc eax
sub edi, 1
mov dword [ecx], eax
jb 0x10054d0b
mov ecx, dword [esp + 0x24]
cmp eax, dword [esp + 0x2c]
mov dword [ecx + 0x14], edi
mov ecx, dword [esp + 0x24c]
movzx ecx, byte [ecx + edi]
mov byte [esp + 0x34], cl
mov cl, 1
mov dword [esp + 0x38], ecx
jb 0x10054940
jmp 0x10055f09
test byte [esp + 0x38], 1
mov edi, dword [esp + 0x24]
je 0x100549de
jmp 0x10056156
cmp byte [esp + 0x34], 0x7b
jne 0x10054aa3
cmp eax, dword [esp + 0x2c]
jae 0x10055db3
neg dword [esp + 0x2c]
inc eax
movzx esi, byte [edx + eax - 1]
add esi, 0xfffffff7
cmp esi, 0x19
ja 0x10055f49
mov ecx, 0x800013
bt ecx, esi
jae 0x10054a2c
mov ecx, dword [esp + 0x1c]
mov dword [ecx], eax
mov ecx, dword [esp + 0x2c]
lea ecx, [ecx + eax + 1]
inc eax
cmp ecx, 1
jne 0x100549f8
jmp 0x10055db3
cmp esi, 0x19
jne 0x10055f49
mov dword [edi + 8], eax
push edi
call fcn.10118110
add esp, 4
mov esi, eax
test eax, eax
jne 0x10054d7d
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
cmp eax, ecx
mov dword [esp + 0x2c], ecx
jae 0x10055f88
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x2c]
inc eax
mov edx, dword [ecx]
neg esi
movzx edi, byte [edx + eax - 1]
add edi, 0xfffffff7
cmp edi, 0x31
ja 0x1005619e
mov ecx, dword [edi*4 + 0x1005718c]
add ecx, dword [esp + 0x30]
jmp ecx
cmp eax, dword [esp + 0x2c]
mov cl, 1
mov dword [esp + 0x38], ecx
jb 0x1005464e
jmp 0x10055b62
mov ebx, dword [edi + 4]
mov eax, dword [edi + 8]
mov cl, 1
mov dword [esp + 0x28], ecx
cmp eax, ebx
jb 0x10053ff8
jmp 0x10054d58
mov edi, dword [esp + 0x24]
jmp 0x10054cf5
mov edi, dword [esp + 0x24]
dec byte [edi + 0x18]
je 0x1005569d
mov dword [esp + 0x48], edi
mov dword [edi + 8], eax
mov byte [esp + 0x4c], 1
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10044e20
cmp dword [esp + 0x128], 0
je 0x100552ea
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
jmp 0x10055358
mov dword [esp + 0x128], 3
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
mov esi, eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp + 0xc], eax
mov al, 1
mov dword [esp + 0x14], eax
mov al, 1
mov dword [esp + 0x18], eax
mov al, 1
mov dword [esp], eax
mov al, 1
mov dword [esp + 4], eax
mov al, 1
mov dword [esp + 8], eax
mov al, 1
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1dc]
test eax, eax
je 0x10054dd1
cmp dword [esp + 0x1e0], 0
je 0x10054dd1
mov ecx, dword [0x1035648c]
push eax
push 0
push dword [ecx]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x118]
test eax, eax
je 0x10054dfd
cmp byte [esp + 0x28], 0
je 0x10054dfd
cmp dword [esp + 0x11c], 0
je 0x10054dfd
mov ecx, dword [0x1035648c]
push eax
push 0
push dword [ecx]
call sub.KERNEL32.dll_HeapFree
mov ebx, dword [esp + 0xe8]
mov dword [esp + 0x2c], esi
test ebx, ebx
je 0x10054e6b
cmp byte [esp + 0x10], 0
je 0x10054e6b
mov esi, dword [esp + 0xf0]
test esi, esi
je 0x10054e4e
lea edi, [ebx + 4]
jmp 0x10054e36
add edi, 0xc
dec esi
je 0x10054e4e
cmp dword [edi], 0
je 0x10054e30
push dword [edi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10054e30
cmp dword [esp + 0xec], 0
mov edi, dword [esp + 0x24]
je 0x10054e6b
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov ebx, dword [esp + 0xd8]
test ebx, ebx
je 0x10054ecb
cmp byte [esp + 0xc], 0
je 0x10054ecb
mov esi, dword [esp + 0xe0]
test esi, esi
je 0x10054eae
lea edi, [ebx + 4]
jmp 0x10054e96
add edi, 0xc
dec esi
je 0x10054eae
cmp dword [edi], 0
je 0x10054e90
push dword [edi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10054e90
cmp dword [esp + 0xdc], 0
mov edi, dword [esp + 0x24]
je 0x10054ecb
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov ebx, dword [esp + 0xc8]
test ebx, ebx
je 0x10054f2b
cmp byte [esp + 0x14], 0
je 0x10054f2b
mov esi, dword [esp + 0xd0]
test esi, esi
je 0x10054f0e
lea edi, [ebx + 4]
jmp 0x10054ef6
add edi, 0xc
dec esi
je 0x10054f0e
cmp dword [edi], 0
je 0x10054ef0
push dword [edi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10054ef0
cmp dword [esp + 0xcc], 0
mov edi, dword [esp + 0x24]
je 0x10054f2b
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov ebx, dword [esp + 0xb8]
test ebx, ebx
je 0x10054f8b
cmp byte [esp + 0x18], 0
je 0x10054f8b
mov esi, dword [esp + 0xc0]
test esi, esi
je 0x10054f6e
lea edi, [ebx + 4]
jmp 0x10054f56
add edi, 0xc
dec esi
je 0x10054f6e
cmp dword [edi], 0
je 0x10054f50
push dword [edi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10054f50
cmp dword [esp + 0xbc], 0
mov edi, dword [esp + 0x24]
je 0x10054f8b
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp byte [esp], 0
je 0x10054feb
mov ebx, dword [esp + 0xa8]
test ebx, ebx
je 0x10054feb
mov esi, dword [esp + 0xb0]
test esi, esi
je 0x10054fce
lea edi, [ebx + 4]
jmp 0x10054fb6
add edi, 0xc
dec esi
je 0x10054fce
cmp dword [edi], 0
je 0x10054fb0
push dword [edi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10054fb0
cmp dword [esp + 0xac], 0
mov edi, dword [esp + 0x24]
je 0x10054feb
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp byte [esp + 4], 0
je 0x1005504b
mov ebx, dword [esp + 0x98]
test ebx, ebx
je 0x1005504b
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x1005502e
lea edi, [ebx + 4]
jmp 0x10055016
add edi, 0xc
dec esi
je 0x1005502e
cmp dword [edi], 0
je 0x10055010
push dword [edi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10055010
cmp dword [esp + 0x9c], 0
mov edi, dword [esp + 0x24]
je 0x1005504b
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp byte [esp + 8], 0
mov ebx, dword [esp + 0x2c]
je 0x1005507b
mov eax, dword [esp + 0x108]
test eax, eax
je 0x1005507b
cmp dword [esp + 0x10c], 0
je 0x1005507b
mov ecx, dword [0x1035648c]
push eax
push 0
push dword [ecx]
call sub.KERNEL32.dll_HeapFree
cmp byte [esp + 0x20], 0
je 0x100550a7
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x100550a7
cmp dword [esp + 0xfc], 0
je 0x100550a7
mov ecx, dword [0x1035648c]
push eax
push 0
push dword [ecx]
call sub.KERNEL32.dll_HeapFree
mov esi, dword [edi + 4]
mov eax, dword [edi + 8]
mov edx, ebx
mov dword [esp], 0
mov dword [esp + 0x250], edx
mov dword [esp + 0x254], ecx
mov ecx, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x48]
mov edx, dword [esp + 0x1d8]
inc byte [edi + 0x18]
cmp eax, esi
mov dword [esp + 0x25c], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x258], ecx
mov ecx, dword [esp + 0x224]
mov dword [esp + 0x264], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x260], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x26c], ecx
mov ecx, dword [esp + 8]
mov dword [esp + 0x268], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x274], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x270], ecx
mov ecx, dword [esp + 0x50]
movsd qword [esp + 0x278], xmm0
movsd xmm0, qword [esp + 0x360]
mov dword [esp + 0x280], ecx
mov ecx, dword [esp + 0x368]
movsd qword [esp + 0x284], xmm0
movsd xmm0, qword [esp + 0x350]
mov dword [esp + 0x28c], ecx
mov ecx, dword [esp + 0x358]
movsd qword [esp + 0x290], xmm0
movsd xmm0, qword [esp + 0x340]
mov dword [esp + 0x298], ecx
mov ecx, dword [esp + 0x348]
movsd qword [esp + 0x29c], xmm0
movsd xmm0, qword [esp + 0x330]
mov dword [esp + 0x2a4], ecx
mov ecx, dword [esp + 0x338]
movsd qword [esp + 0x2a8], xmm0
movsd xmm0, qword [esp + 0x320]
mov dword [esp + 0x2b0], ecx
mov ecx, dword [esp + 0x328]
movsd qword [esp + 0x2b4], xmm0
movsd xmm0, qword [esp + 0x310]
mov dword [esp + 0x2bc], ecx
mov ecx, dword [esp + 0x318]
movsd qword [esp + 0x2c0], xmm0
movsd xmm0, qword [esp + 0x300]
mov dword [esp + 0x2c8], ecx
mov ecx, dword [esp + 0x308]
movsd qword [esp + 0x2cc], xmm0
movq xmm0, qword [esp + 0x2f0]
mov dword [esp + 0x2d4], ecx
mov ecx, dword [esp + 0x2f8]
movq qword [esp + 0x2d8], xmm0
mov dword [esp + 0x2e0], ecx
mov ecx, dword [esp]
mov dword [esp + 0x2e4], ecx
mov dword [esp + 0x2e8], edx
mov dword [esp + 0x2ec], ebx
mov ebx, dword [esp + 0x30]
jae 0x1005529c
mov ecx, dword [esp + 0x24]
mov edi, esi
inc eax
neg edi
mov edx, dword [ecx]
nop
movzx ecx, byte [edx + eax - 1]
lea esi, [ecx - 9]
cmp esi, 0x23
ja 0x100556b6
mov ecx, dword [esi*4 + 0x10057254]
add ecx, ebx
jmp ecx
mov dword [esp + 0x70], 3
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x70]
call fcn.1003aa40
mov ebx, eax
lea eax, [esp + 0x250]
lea ecx, [esp + 0x128]
push 0xa0
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov dword [esp + 0x1c8], ebx
cmp dword [esp + 0x1bc], 0
je 0x100555bf
jmp 0x10055541
mov ebx, dword [esp + 0x12c]
test ebx, ebx
je 0x10055b3a
mov esi, dword [esp + 0x130]
mov eax, dword [esp + 0x134]
mov dword [esp + 0x1dc], ebx
mov dword [esp + 0x1e0], esi
mov dword [esp + 0x1e4], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10044e20
cmp dword [esp + 0x128], 0
je 0x10055633
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
test esi, esi
je 0x10055358
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 0x30], 0
mov ebx, dword [esp + 0x1c]
movq xmm0, qword [esp + 0x118]
movsd xmm2, qword [esp + 0xe8]
movsd xmm1, qword [esp + 0xd8]
inc byte [edi + 0x18]
mov dword [esp + 0x250], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x254], ebx
mov dword [esp + 0x25c], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 0x260], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x264], esi
mov esi, dword [esp + 0x120]
mov dword [esp + 0x26c], eax
mov eax, dword [esp]
mov dword [esp + 0x268], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x274], eax
mov eax, dword [esp + 4]
mov dword [esp + 0x270], eax
mov dword [esp + 0x280], esi
mov esi, dword [esp + 0xf0]
movq qword [esp + 0x278], xmm0
movsd qword [esp + 0x284], xmm2
movsd xmm2, qword [esp + 0xc8]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x28c], esi
mov esi, dword [esp + 0xe0]
movsd qword [esp + 0x290], xmm1
movsd xmm1, qword [esp + 0xb8]
mov dword [esp + 0x298], esi
mov esi, dword [esp + 0xd0]
movsd qword [esp + 0x29c], xmm2
movsd xmm2, qword [esp + 0xa8]
mov dword [esp + 0x2a4], esi
mov esi, dword [esp + 0xc0]
movsd qword [esp + 0x2a8], xmm1
movsd xmm1, qword [esp + 0x98]
mov dword [esp + 0x2b0], esi
mov esi, dword [esp + 0xb0]
movsd qword [esp + 0x2b4], xmm2
movsd xmm2, qword [esp + 0x108]
mov dword [esp + 0x2bc], esi
mov esi, dword [esp + 0xa0]
movsd qword [esp + 0x2c0], xmm1
movq xmm1, qword [esp + 0xf8]
mov dword [esp + 0x2c8], esi
mov esi, dword [esp + 0x110]
movsd qword [esp + 0x2cc], xmm2
mov dword [esp + 0x2d4], esi
mov esi, dword [esp + 0x100]
movq qword [esp + 0x2d8], xmm1
mov dword [esp + 0x2e0], esi
mov dword [esp + 0x2e4], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2ec], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2e8], eax
mov ecx, edi
call fcn.1003bd80
mov ebx, eax
lea eax, [esp + 0x250]
push 0xa0
push eax
lea eax, [esp + 0x130]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov dword [esp + 0x1c8], ebx
mov edi, dword [esp + 0x1bc]
test edi, edi
je 0x1005559a
test ebx, ebx
je 0x100555ef
lea ecx, [esp + 0x128]
call fcn.10043190
xor edi, edi
mov esi, ebx
test edi, edi
je 0x100555e6
mov ebx, dword [esp + 0x3c]
lea eax, [ebx + 4]
lea ecx, [esp + 0x36c]
push 0x90
push ecx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x1c]
mov dword [ebx], esi
mov dword [ebx + 0x94], edi
mov dword [ebx + 0x9c], eax
mov dword [ebx + 0x98], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, dword [esp + 0x128]
xor edi, edi
test ebx, ebx
je 0x10055551
mov ecx, ebx
call fcn.10041580
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10055551
mov esi, dword [esp + 0x128]
mov ecx, ebx
call fcn.10041580
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
xor edi, edi
test edi, edi
jne 0x10055559
mov edi, dword [esp + 0x24]
jmp 0x10055745
mov esi, dword [esp + 0x128]
lea eax, [esp + 0x12c]
lea ecx, [esp + 0x36c]
push 0x90
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x1c0]
mov ecx, dword [esp + 0x1c4]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x30], ecx
test edi, edi
jne 0x10055559
jmp 0x100555e6
mov eax, dword [esp + 0x12c]
test eax, eax
je 0x10055a8d
mov ecx, eax
mov edx, dword [esp + 0x130]
mov eax, dword [esp + 0x134]
mov dword [esp + 0x228], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x22c], edx
mov dword [esp + 0x230], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045010
cmp dword [esp + 0x128], 0
je 0x10055aa0
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
jmp 0x10055c00
mov dword [esp + 0x128], 0x18
lea edx, [esp + 0x128]
mov ecx, edi
jmp 0x10053e98
cmp ecx, 0x7d
jne 0x100556f9
mov ecx, dword [esp + 0x1c]
mov dword [ecx], eax
lea eax, [esp + 0x250]
lea ecx, [esp + 0x128]
push 0xa0
push eax
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edi, dword [esp + 0x1bc]
mov esi, dword [esp + 0x128]
test edi, edi
jne 0x100555f6
jmp 0x100555dc
mov dword [esp + 0x70], 0x16
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x70]
call fcn.1003aa40
jmp 0x100552b1
lea edx, [esp + 0x128]
mov ecx, edi
push 0x101e11e4
call fcn.1003b470
add esp, 4
mov esi, eax
mov ecx, esi
mov edx, edi
call fcn.1003bef0
jmp 0x10053e9d
cmp dword [esp + 0x68], 0
je 0x10055b4a
mov ecx, dword [esp + 0x100]
movq xmm0, qword [esp + 0xf8]
cmp dword [esp + 0x94], 0
mov edi, dword [esp + 0x24]
mov dword [esp + 0x230], ecx
movq qword [esp + 0x228], xmm0
je 0x10055bad
mov ecx, dword [esp + 0x110]
movq xmm0, qword [esp + 0x108]
cmp dword [esp + 0x90], 0
mov dword [esp + 0x240], ecx
movq qword [esp + 0x238], xmm0
je 0x10055c22
mov ecx, dword [esp + 0xa0]
movq xmm0, qword [esp + 0x98]
cmp dword [esp + 0x64], 0
mov dword [esp + 0x1f0], ecx
movq qword [esp + 0x1e8], xmm0
je 0x10055d54
mov ecx, dword [esp + 0xb0]
movq xmm0, qword [esp + 0xa8]
cmp dword [esp + 0x60], 0
mov dword [esp + 0x200], ecx
movq qword [esp + 0x1f8], xmm0
je 0x10055dd1
mov ecx, dword [esp + 0xc0]
movq xmm0, qword [esp + 0xb8]
cmp dword [esp + 0x8c], 0
mov dword [esp + 0x210], ecx
movq qword [esp + 0x208], xmm0
je 0x10055e3c
mov ecx, dword [esp + 0xd0]
movq xmm0, qword [esp + 0xc8]
cmp dword [esp + 0x84], 0
mov dword [esp + 0x220], ecx
movq qword [esp + 0x218], xmm0
je 0x10055edb
mov ecx, dword [esp + 0xe0]
movq xmm0, qword [esp + 0xd8]
cmp dword [esp + 0x88], 0
mov dword [esp + 0x78], ecx
movq qword [esp + 0x70], xmm0
je 0x10055f64
mov ecx, dword [esp + 0xf0]
movq xmm0, qword [esp + 0xe8]
cmp dword [esp + 0x44], 0
mov edx, 4
mov dword [esp + 0x258], ecx
movq qword [esp + 0x250], xmm0
je 0x10055ff6
cmp dword [esp + 0x5c], 0
je 0x10056127
cmp dword [esp + 0x58], 0
je 0x10056194
cmp dword [esp + 0x40], 0
mov edx, 1
je 0x10056249
cmp dword [esp + 0x7c], 0
je 0x10056368
cmp dword [esp + 0x80], 0
je 0x100563f2
mov ecx, dword [esp + 0x120]
movq xmm0, qword [esp + 0x118]
cmp dword [esp], 0
mov dword [esp + 0x130], ecx
movq qword [esp + 0x128], xmm0
je 0x10056423
mov ecx, dword [esp + 0x100]
movsd xmm0, qword [esp + 0xf8]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x248]
mov ebx, dword [esp + 0x244]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x110]
movsd qword [esp + 0x48], xmm0
movsd xmm0, qword [esp + 0x108]
mov dword [esp + 0x368], ecx
mov ecx, dword [esp + 0xa0]
movsd qword [esp + 0x360], xmm0
movsd xmm0, qword [esp + 0x98]
mov dword [esp + 0x358], ecx
mov ecx, dword [esp + 0xb0]
movsd qword [esp + 0x350], xmm0
movsd xmm0, qword [esp + 0xa8]
mov dword [esp + 0x348], ecx
mov ecx, dword [esp + 0xc0]
movsd qword [esp + 0x340], xmm0
movsd xmm0, qword [esp + 0xb8]
mov dword [esp + 0x338], ecx
mov ecx, dword [esp + 0xd0]
movsd qword [esp + 0x330], xmm0
movsd xmm0, qword [esp + 0xc8]
mov dword [esp + 0x328], ecx
mov ecx, dword [esp + 0xe0]
movsd qword [esp + 0x320], xmm0
movsd xmm0, qword [esp + 0xd8]
mov dword [esp + 0x318], ecx
mov ecx, dword [esp + 0xf0]
movsd qword [esp + 0x310], xmm0
movsd xmm0, qword [esp + 0xe8]
mov dword [esp + 0x308], ecx
mov ecx, dword [esp + 0x120]
movsd qword [esp + 0x300], xmm0
movq xmm0, qword [esp + 0x118]
mov dword [esp + 0x2f8], ecx
mov ecx, dword [esp + 0x1d4]
movq qword [esp + 0x2f0], xmm0
jmp 0x100550b6
mov ecx, 1
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x10055345
mov edx, dword [esp + 0x12c]
test edx, edx
je 0x10055bf2
mov ecx, dword [esp + 0x134]
mov eax, dword [esp + 0x130]
mov dword [esp + 0x238], edx
mov edi, ecx
mov dword [esp + 0x224], eax
mov dword [esp + 0x23c], eax
mov dword [esp + 0x240], ecx
mov dword [esp + 0x14], edx
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045010
cmp dword [esp + 0x128], 0
mov dword [esp + 0x1d8], esi
je 0x10055c61
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
test edi, edi
je 0x10055b84
mov eax, dword [esp + 0x14]
lea esi, [eax + 4]
jmp 0x10055b22
add esi, 0xc
dec edi
je 0x10055b84
cmp dword [esi], 0
je 0x10055b1c
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10055b1c
xor ecx, ecx
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x10055358
mov ecx, str.public_rsa_pem
mov edx, 0xe
call fcn.10044d20
mov edi, dword [esp + 0x24]
jmp 0x10054d75
mov dword [esp + 0x128], 5
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10055f42
cmp dword [esp + 0x224], 0
je 0x10055ba0
mov eax, dword [0x1035648c]
push dword [esp + 0x14]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x1d8]
jmp 0x10055c00
mov ecx, str.password_hash
mov edx, 0xd
call fcn.10044d20
mov esi, eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp + 0xc], eax
mov al, 1
mov dword [esp + 0x14], eax
mov al, 1
mov dword [esp + 0x18], eax
mov al, 1
mov dword [esp], eax
mov al, 1
mov dword [esp + 4], eax
mov al, 1
mov dword [esp + 8], eax
jmp 0x10056667
mov ecx, 2
call fcn.10044d70
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x28], 0
je 0x10055345
mov eax, dword [0x1035648c]
push dword [esp + 0x18]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10055345
mov ecx, str.directory_black_list
mov edx, 0x14
call fcn.10044d20
mov esi, eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp + 0xc], eax
mov al, 1
mov dword [esp + 0x14], eax
mov al, 1
mov dword [esp + 0x18], eax
mov al, 1
mov dword [esp], eax
mov al, 1
mov dword [esp + 4], eax
jmp 0x10056640
mov eax, dword [esp + 0x12c]
test eax, eax
je 0x10055e29
mov edx, dword [esp + 0x134]
mov ecx, dword [esp + 0x130]
mov dword [esp + 0x1e8], eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x94], ecx
mov dword [esp + 0x1ec], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x1f0], edx
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045010
cmp dword [esp + 0x128], 0
je 0x10055e6c
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xc]
cmp dword [esp + 0x10], 0
je 0x10055d8f
lea esi, [eax + 4]
jmp 0x10055cec
add esi, 0xc
dec dword [esp + 0x10]
je 0x10055d8f
cmp dword [esi], 0
je 0x10055cdf
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0xc]
jmp 0x10055cdf
movzx eax, dl
cmp eax, 0x7d
jne 0x10055d32
mov dword [esp + 0x128], 0x15
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10054d75
mov dword [esp + 0x128], 0x11
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10054d75
mov ecx, str.file_black_list
mov edx, 0xf
call fcn.10044d20
mov dword [esp + 0x2c], eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp + 0xc], eax
mov al, 1
mov dword [esp + 0x14], eax
mov al, 1
mov dword [esp + 0x18], eax
mov al, 1
mov dword [esp], eax
jmp 0x100565e2
cmp dword [esp + 0x94], 0
je 0x10055b0f
mov ecx, eax
mov eax, dword [0x1035648c]
push ecx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10055b0f
mov dword [esp + 0x128], 3
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10055f42
mov ecx, str.file_pattern_black_list
mov edx, 0x17
call fcn.10044d20
mov dword [esp + 0x2c], eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp + 0xc], eax
mov al, 1
mov dword [esp + 0x14], eax
mov al, 1
mov dword [esp + 0x18], eax
jmp 0x1005658d
mov dword [esp + 0x128], 8
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10054d75
mov ecx, 3
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x10055b0f
mov ecx, str.process_black_list
mov edx, 0x12
call fcn.10044d20
mov dword [esp + 0x2c], eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp + 0xc], eax
mov al, 1
mov dword [esp + 0x14], eax
jmp 0x10056537
mov eax, dword [esp + 0x12c]
test eax, eax
je 0x10055fa7
mov edx, dword [esp + 0x134]
mov ecx, dword [esp + 0x130]
mov dword [esp + 0x1f8], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x90], ecx
mov dword [esp + 0x1fc], ecx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x200], edx
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045010
cmp dword [esp + 0x128], 0
je 0x10056078
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
jmp 0x100561f0
mov ecx, str.win_services_black_list
mov edx, 0x17
call fcn.10044d20
mov dword [esp + 0x2c], eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp + 0xc], eax
jmp 0x100564e1
mov byte [esp + 0x34], bl
movzx ecx, byte [esp + 0x34]
mov edi, dword [esp + 0x24]
mov eax, 2
cmp cl, 0x5b
je 0x10055f2d
movzx eax, cl
cmp eax, 0x7b
jne 0x10056967
mov eax, 3
mov dword [esp + 0x128], eax
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
mov esi, eax
jmp 0x10054d7d
mov dword [esp + 0x128], 0x11
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10055f42
mov ecx, str.accountsstepskipfastnp
mov edx, 8
call fcn.10044d20
mov dword [esp + 0x2c], eax
mov al, 1
mov dword [esp + 0x28], eax
mov al, 1
mov dword [esp + 0x10], eax
jmp 0x10056494
mov dword [esp + 0x128], 3
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10055f42
mov ecx, 4
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x10055ccb
mov ecx, 0x10243080
jmp 0x1005636d
mov eax, dword [esp + 0x12c]
test eax, eax
je 0x100561e2
mov edx, dword [esp + 0x134]
mov ecx, dword [esp + 0x130]
mov dword [esp + 0x208], eax
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], eax
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x20c], ecx
mov dword [esp + 0x88], edx
mov dword [esp + 0x210], edx
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045010
cmp dword [esp + 0x128], 0
je 0x100562c1
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
mov ebx, dword [esp + 0x88]
test ebx, ebx
je 0x10056131
mov eax, dword [esp + 0x64]
lea esi, [eax + 4]
jmp 0x10056103
add esi, 0xc
dec ebx
je 0x10056131
cmp dword [esi], 0
je 0x100560fd
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x100560fd
mov ecx, 0x10243084
jmp 0x1005636d
cmp dword [esp + 0x8c], 0
je 0x1005614d
mov eax, dword [0x1035648c]
push dword [esp + 0x64]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov ebx, dword [esp + 0x60]
jmp 0x100561f0
movzx ecx, byte [esp + 0x34]
mov eax, 7
cmp cl, 0x5b
je 0x1005617a
movzx eax, cl
cmp eax, 0x7b
jne 0x10056b03
mov edi, dword [esp + 0x24]
mov eax, 8
mov dword [esp + 0x128], eax
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10055f42
mov ecx, 0x10243088
jmp 0x1005636d
mov dword [esp + 0x128], 6
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10055f42
mov dword [esp + 0x128], 0xa
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x128]
mov ecx, edi
call fcn.1003aa40
jmp 0x10055f42
mov ecx, 5
call fcn.10044d70
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x6c], 0
mov eax, dword [esp + 0x68]
je 0x10056225
lea esi, [eax + 4]
jmp 0x10056209
add esi, 0xc
dec dword [esp + 0x6c]
je 0x10056225
cmp dword [esi], 0
je 0x10056200
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x68]
jmp 0x10056200
cmp dword [esp + 0x90], 0
je 0x10055ccb
mov ecx, eax
mov eax, dword [0x1035648c]
push ecx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10055ccb
mov ecx, 0x1024308c
jmp 0x1005636d
mov eax, dword [esp + 0x12c]
test eax, eax
mov dword [esp + 0x44], eax
je 0x10056410
mov ecx, dword [esp + 0x130]
mov edx, dword [esp + 0x134]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x218], eax
mov dword [esp + 0x84], ecx
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x80], edx
mov dword [esp + 0x220], edx
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045010
cmp dword [esp + 0x128], 0
je 0x100566b3
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
mov ebx, dword [esp + 0x80]
test ebx, ebx
je 0x100563cd
mov eax, dword [esp + 0x44]
lea esi, [eax + 4]
jmp 0x10056350
add esi, 0xc
dec ebx
je 0x100563cd
cmp dword [esi], 0
je 0x1005634a
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x1005634a
mov ecx, 0x1024308d
call fcn.10044d20
mov dword [esp + 0x2c], eax
mov al, 1
mov dword [esp + 0x28], eax
mov edi, dword [esp + 0x258]
mov ebx, dword [esp + 0x250]
test edi, edi
je 0x10056473
lea esi, [ebx + 4]
jmp 0x100563a1
add esi, 0xc
dec edi
je 0x10056473
cmp dword [esi], 0
je 0x10056397
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10056397
cmp dword [esp + 0x84], 0
je 0x100560e9
mov eax, dword [0x1035648c]
push dword [esp + 0x44]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x100560e9
mov ecx, str.company_id
mov edx, 0xa
call fcn.10044d20
jmp 0x10056372
mov ecx, 6
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x100560e9
mov ecx, str.notestruct_EncryptorEmbeddedConfigurationstruct_EncryptorEmbeddedConfiguration_with_15_elements
mov edx, 4
call fcn.10044d20
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x12c], 0
je 0x10056455
mov eax, dword [0x1035648c]
push dword [esp + 0x128]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 0x28], 0
mov edi, dword [esp + 0x258]
mov ebx, dword [esp + 0x250]
test edi, edi
jne 0x10056392
cmp dword [esp + 0x254], 0
je 0x1005648c
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 0x10], 0
mov edi, dword [esp + 0x78]
mov ebx, dword [esp + 0x70]
test edi, edi
je 0x100564c3
lea esi, [ebx + 4]
jmp 0x100564ab
add esi, 0xc
dec edi
je 0x100564c3
cmp dword [esi], 0
je 0x100564a5
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x100564a5
cmp dword [esp + 0x74], 0
je 0x100564d9
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 0xc], 0
mov edi, dword [esp + 0x220]
mov ebx, dword [esp + 0x218]
test edi, edi
je 0x10056516
lea esi, [ebx + 4]
jmp 0x100564fe
add esi, 0xc
dec edi
je 0x10056516
cmp dword [esi], 0
je 0x100564f8
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x100564f8
cmp dword [esp + 0x21c], 0
je 0x1005652f
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 0x14], 0
mov edi, dword [esp + 0x210]
mov ebx, dword [esp + 0x208]
test edi, edi
je 0x1005656c
lea esi, [ebx + 4]
jmp 0x10056554
add esi, 0xc
dec edi
je 0x1005656c
cmp dword [esi], 0
je 0x1005654e
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x1005654e
cmp dword [esp + 0x20c], 0
je 0x10056585
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 0x18], 0
mov edi, dword [esp + 0x200]
mov ebx, dword [esp + 0x1f8]
test edi, edi
je 0x100565c2
lea esi, [ebx + 4]
jmp 0x100565aa
add esi, 0xc
dec edi
je 0x100565c2
cmp dword [esi], 0
je 0x100565a4
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x100565a4
cmp dword [esp + 0x1fc], 0
je 0x100565db
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp], 0
mov edi, dword [esp + 0x1f0]
mov ebx, dword [esp + 0x1e8]
test edi, edi
je 0x10056617
lea esi, [ebx + 4]
jmp 0x100565ff
add esi, 0xc
dec edi
je 0x10056617
cmp dword [esi], 0
je 0x100565f9
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x100565f9
cmp dword [esp + 0x1ec], 0
je 0x10056630
mov eax, dword [0x1035648c]
push ebx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x2c]
mov dword [esp + 4], 0
cmp dword [esp + 0x23c], 0
je 0x1005665f
mov eax, dword [0x1035648c]
push dword [esp + 0x238]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 8], 0
cmp dword [esp + 0x22c], 0
je 0x10056686
mov eax, dword [0x1035648c]
push dword [esp + 0x228]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [esp + 0x20], 0
mov eax, dword [esp + 0x1dc]
test eax, eax
jne 0x10054db7
jmp 0x10054dd1
mov eax, dword [esp + 0x12c]
test eax, eax
mov dword [esp + 0x40], eax
je 0x1005675c
mov edx, dword [esp + 0x134]
mov ecx, dword [esp + 0x130]
mov eax, dword [esp + 0x40]
mov ebx, edx
mov dword [esp + 0x70], eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edx
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045200
mov eax, dword [esp + 0x128]
test al, 3
je 0x1005676f
mov ecx, dword [esp + 0x130]
cmp eax, 2
mov dword [esp + 0x1c], ecx
je 0x10056861
mov eax, dword [esp + 0x134]
mov dword [esp + 0x2c], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045200
mov eax, dword [esp + 0x128]
test al, 3
je 0x10056779
mov ecx, dword [esp + 0x130]
cmp eax, 2
mov dword [esp + 0x5c], ecx
jne 0x10056783
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x1c], eax
jmp 0x10056861
mov ecx, 7
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x10056332
mov ecx, 8
jmp 0x10056858
mov ecx, 9
jmp 0x10056858
mov eax, dword [esp + 0x134]
mov dword [esp + 0x1d4], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045200
mov eax, dword [esp + 0x128]
test al, 3
je 0x100567c9
mov ecx, dword [esp + 0x130]
cmp eax, 2
mov dword [esp + 0x58], ecx
jne 0x100567d3
mov eax, dword [esp + 0x58]
mov dword [esp + 0x1c], eax
jmp 0x10056861
mov ecx, 0xa
jmp 0x10056858
mov eax, dword [esp + 0x134]
mov dword [esp + 0x34], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045200
mov eax, dword [esp + 0x128]
test al, 3
je 0x10056811
mov ecx, dword [esp + 0x130]
cmp eax, 2
mov dword [esp], ecx
jne 0x10056818
mov eax, dword [esp]
mov dword [esp + 0x1c], eax
jmp 0x10056861
mov ecx, 0xb
jmp 0x10056858
mov eax, dword [esp + 0x134]
mov dword [esp + 8], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10045200
mov eax, dword [esp + 0x128]
mov ecx, dword [esp + 0x130]
mov edx, eax
mov dword [esp + 4], ecx
and dl, 3
cmp dl, 2
je 0x100568ae
mov ecx, 0xc
test eax, eax
jne 0x100568b8
call fcn.10044d70
mov dword [esp + 0x1c], eax
test ebx, ebx
je 0x1005688c
mov eax, dword [esp + 0x40]
lea esi, [eax + 4]
jmp 0x10056874
add esi, 0xc
dec ebx
je 0x1005688c
cmp dword [esi], 0
je 0x1005686e
push dword [esi - 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x1005686e
cmp dword [esp + 0x7c], 0
je 0x10056332
mov eax, dword [0x1035648c]
push dword [esp + 0x40]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10056332
mov eax, dword [esp + 4]
mov dword [esp + 0x1c], eax
jmp 0x10056861
mov eax, dword [esp + 0x134]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10044e20
cmp dword [esp + 0x128], 0
je 0x100568ed
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
jmp 0x10056861
mov esi, dword [esp + 0x12c]
test esi, esi
je 0x1005697e
mov ecx, dword [esp + 0x130]
mov eax, dword [esp + 0x134]
mov dword [esp + 0x250], esi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x254], ecx
mov dword [esp + 0x258], eax
lea ecx, [esp + 0x128]
lea edx, [esp + 0x48]
call fcn.10044e20
cmp dword [esp + 0x128], 0
je 0x10056991
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x38], 0
je 0x10056861
mov eax, dword [0x1035648c]
push esi
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10056861
mov eax, 0x101e0654
push eax
push 0x28
push 0x101e05d0
call fcn.10026890
add esp, 0xc
ud2
mov ecx, 0xd
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x10056861
mov eax, dword [esp + 0x12c]
test eax, eax
mov dword [esp + 0x30], eax
je 0x10056af0
mov edi, dword [esp + 0x1e4]
movsd xmm0, qword [esp + 0x1dc]
mov eax, dword [esp + 0x130]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x1d4]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x120], edi
mov edi, dword [esp + 0x230]
movsd qword [esp + 0x118], xmm0
movsd xmm0, qword [esp + 0x228]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x134]
mov dword [esp + 0xf0], edi
mov edi, dword [esp + 0x240]
movsd qword [esp + 0xe8], xmm0
movsd xmm0, qword [esp + 0x238]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xe0], edi
mov edi, dword [esp + 0x1f0]
movsd qword [esp + 0xd8], xmm0
movsd xmm0, qword [esp + 0x1e8]
mov dword [esp + 0xd0], edi
mov edi, dword [esp + 0x200]
movsd qword [esp + 0xc8], xmm0
movsd xmm0, qword [esp + 0x1f8]
mov dword [esp + 0xc0], edi
mov edi, dword [esp + 0x210]
movsd qword [esp + 0xb8], xmm0
movsd xmm0, qword [esp + 0x208]
mov dword [esp + 0xb0], edi
mov edi, dword [esp + 0x220]
movsd qword [esp + 0xa8], xmm0
movsd xmm0, qword [esp + 0x218]
mov dword [esp + 0xa0], edi
mov edi, dword [esp + 0x78]
movsd qword [esp + 0x98], xmm0
movsd xmm0, qword [esp + 0x70]
mov dword [esp + 0x110], edi
mov edi, dword [esp + 0x258]
movsd qword [esp + 0x108], xmm0
movsd xmm0, qword [esp + 0x250]
mov dword [esp + 0x100], edi
mov edi, dword [esp + 0x24]
movsd qword [esp + 0xf8], xmm0
jmp 0x10055360
mov ecx, 0xe
call fcn.10044d70
mov dword [esp + 0x1c], eax
jmp 0x10056948
mov eax, 0x101e0664
jmp 0x1005696c