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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x140]
cmp eax, dword [ecx + 8]
jbe 0x443782
sub esp, 0x1c0
xor eax, eax
mov dword [esp + 0x18c], eax
mov dword [esp + 0x190], eax
mov eax, dword [esp + 0x1d4]
test eax, eax
jle 0x4433ff
mov ecx, dword [esp + 0x1e0]
test ecx, ecx
jne 0x44376a
mov edx, dword [0x7004a4]
test edx, edx
je 0x443752
mov edx, dword fs:[0x14]
mov edx, dword [edx]
mov dword [esp + 0x158], edx
mov ebx, dword [esp + 0x1d0]
cmp edx, ebx
jne 0x4421bc
mov ebp, dword [edx + 0x18]
mov ebp, dword [ebp + 0x4c]
cmp edx, ebp
je 0x44373a
call fcn.00432840
mov eax, dword [esp]
mov ecx, dword [esp + 0x1c4]
cmp ecx, 0xffffffff
jne 0x4433e5
mov edx, dword [esp + 0x1c8]
cmp edx, 0xffffffff
jne 0x4433d2
mov ecx, dword [esp + 0x1d0]
mov edx, dword [ecx + 0x38]
test edx, edx
je 0x4433c7
mov ebx, dword [ecx + 0x3c]
mov dword [esp + 0x40], eax
lea edi, [esp + 0x194]
mov ebp, eax
xor eax, eax
call fcn.0044c135
mov dword [esp + 0x19c], ebx
mov dword [esp + 0x1a8], edx
mov ecx, dword [esp + 0x1d0]
mov ebx, dword [ecx + 0xbc]
mov esi, dword [ecx + 0xb8]
mov edi, ebp
mov ebp, dword [esp + 0x1d8]
test ebp, ebp
je 0x44339e
xor eax, eax
mov byte [esp + 0x1f], al
xor eax, eax
mov edi, dword [ecx + 0x14]
jmp 0x442256
mov edi, dword [edi + 0x18]
mov ebp, dword [esp + 0x1d8]
test edi, edi
je 0x442262
mov ebp, dword [edi + 8]
cmp ebp, 0xffffffff
je 0x44224c
mov dword [esp + 0x174], edi
mov dword [esp + 0x50], ebx
mov dword [esp + 0x170], esi
mov ebp, dword [esp + 0x19c]
test ebp, ebp
jne 0x442299
mov edx, dword [edx]
mov dword [esp + 0x19c], edx
mov edx, dword [esp + 0x1a8]
add edx, 4
mov dword [esp + 0x1a8], edx
mov eax, dword [esp + 0x19c]
mov dword [esp], eax
call fcn.0043e1a0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
test eax, eax
je 0x44337d
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], ecx
lea edi, [esp + 0x90]
xor eax, eax
call fcn.0044c110
xor eax, eax
xor ecx, ecx
mov edx, dword [esp + 0x170]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x1d4]
xor esi, esi
mov edi, dword [esp + 0x174]
jmp 0x44243c
mov edi, dword [edi + 0x18]
test edi, edi
je 0x4430e2
mov ecx, dword [edi + 8]
mov ebx, dword [esp + 0x1a8]
cmp ebx, ecx
je 0x4422f8
cmp ecx, 0xffffffff
je 0x4422f8
test eax, eax
mov dword [esp + 0x174], edi
jne 0x44307d
mov ecx, dword [esp + 0x1d8]
test ecx, ecx
je 0x44306d
mov ebx, dword [esp + 0x1d4]
test ebx, ebx
jne 0x442e8c
mov edi, dword [esp + 0x19c]
mov eax, dword [esp + 0x38]
cmp eax, 0x100000
jae 0x4435f9
mov dword [ecx + eax*4], edi
xchg esi, eax
test al, al
xchg esi, eax
jne 0x4427f8
mov edi, dword [esp + 0x2c]
inc eax
mov esi, dword [ebp]
mov ecx, dword [0x70045c]
cmp ecx, esi
jne 0x4427f2
mov ecx, dword [esp + 0x50]
test ecx, ecx
jle 0x4427e2
lea esi, [ecx - 1]
cmp esi, ecx
jae 0x4435d6
mov ecx, dword [edx + ecx*4 - 4]
test ebx, ebx
jne 0x4427d6
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x1e0]
test ecx, ecx
je 0x442771
mov dword [esp + 0x84], eax
mov ebp, dword [ebp]
mov ecx, dword [0x7004fc]
mov eax, dword [esp + 0x16c]
test eax, eax
je 0x442552
mov dword [esp + 0x194], eax
mov eax, dword [esp + 0x164]
mov dword [esp + 0x198], eax
mov eax, dword [esp + 0x1a4]
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a4], 0
mov eax, dword [esp + 0x1ac]
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x1ac], 0
mov dword [esp + 0x1bc], 0
cmp ecx, ebp
sete cl
mov eax, dword [esp + 0x84]
mov ebp, ebx
mov ebx, esi
mov esi, edi
mov edi, dword [esp + 0x174]
mov dword [esp + 0x1d4], ebp
mov ebp, dword [esp + 0x1dc]
cmp eax, ebp
jge 0x443372
mov dword [esp + 0x38], eax
mov ebp, dword [esp + 0x194]
mov eax, dword [esp + 0x198]
mov dword [esp + 0x160], eax
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x443365
mov dword [esp + 0x188], edi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x168], ebp
mov byte [esp + 0x1e], cl
mov eax, dword [esp + 0x1ac]
test eax, eax
je 0x44324c
mov dword [esp + 0x50], ebx
mov eax, dword [ebp]
mov ebx, dword [0x7004a4]
cmp ebx, eax
jne 0x4431e1
mov eax, 1
mov dword [esp + 0x184], edx
test al, al
je 0x443172
mov dword [esp + 0x1a4], 0
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x164], eax
mov dword [esp + 0x16c], ebx
mov eax, dword [esp + 0x1ac]
add eax, 0xfffffffc
mov dword [esp + 0x1b0], eax
mov eax, dword [esp + 0x1e0]
test eax, eax
setne bl
jne 0x4430f9
movzx esi, byte [esp + 0x1f]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x4430f9
mov ebx, dword [esp + 0x19c]
mov dword [esp + 0x1a0], ebx
test cl, cl
je 0x4422fb
test edi, edi
je 0x4430e9
mov ebx, dword [edi + 8]
mov ecx, dword [esp + 0x1a8]
cmp ecx, ebx
jne 0x4430e9
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x1a0], ecx
jmp 0x4422fb
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x84]
movzx edx, byte [esp + 0x1f]
test dl, dl
je 0x44276a
mov ecx, dword [esp + 0x1e0]
test ecx, ecx
je 0x442761
mov edx, dword [esp + 0x1dc]
cmp edi, edx
jge 0x44275d
test eax, eax
je 0x44272e
mov ecx, dword [esp + 0x1d0]
mov edx, dword [ecx + 0x54]
mov dword [esp + 0x80], edx
mov ebx, dword [ecx + 0x50]
mov dword [esp + 0x7c], ebx
mov ebp, dword [eax + 8]
mov dword [esp + 0x78], ebp
mov eax, dword [eax + 0xc]
mov dword [esp + 0x74], eax
call fcn.00427a40
lea eax, [0x5dc4e7]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.00428470
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
call fcn.004282c0
lea eax, [0x5df113]
mov dword [esp], eax
mov dword [esp + 4], 0x14
call fcn.00428470
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db2e1]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00428470
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
mov eax, dword [esp + 0x1d0]
mov eax, dword [eax + 0x14]
jmp 0x442721
mov dword [esp + 0x174], eax
mov ecx, dword [eax + 8]
mov dword [esp + 0x78], ecx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x74], edx
call fcn.00427a40
lea eax, [0x5dbad1]
mov dword [esp], eax
mov dword [esp + 4], 7
call fcn.00428470
mov eax, dword [esp + 0x174]
mov dword [esp], eax
call fcn.00428430
lea eax, [0x5db2e9]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00428470
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db2e1]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00428470
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x18]
test eax, eax
jne 0x442669
jmp 0x4435be
test ecx, ecx
je 0x44274f
cmp edi, edx
jge 0x44274f
mov eax, dword [esp + 0x1a8]
mov ecx, dword [esp + 0x1d0]
mov ebx, dword [ecx + 0x40]
cmp eax, ebx
jne 0x44340b
mov dword [esp + 0x1ec], edi
add esp, 0x1c0
ret
test ecx, ecx
jmp 0x442730
mov edx, dword [esp + 0x1dc]
jmp 0x442730
mov edi, ecx
jmp 0x44256d
mov dword [esp + 0x70], esi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebx
mov ecx, dword [esp + 0x1d8]
mov dword [esp], ecx
movzx edx, byte [esp + 0x1f]
mov byte [esp + 4], dl
mov ebx, dword [esp + 0x4c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1dc]
mov dword [esp + 0x10], eax
call fcn.00443920
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x184]
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x6c]
jmp 0x4423b2
mov ecx, dword [esp + 0x1e0]
jmp 0x4423b2
mov ecx, dword [esp + 0x1e0]
mov esi, dword [esp + 0x50]
jmp 0x4423b2
mov ecx, dword [esp + 0x50]
jmp 0x4427e2
mov dword [esp + 0x64], ebx
mov dword [esp + 0x84], eax
mov edi, dword [esp + 0x1e8]
test edi, 1
je 0x442e1e
mov esi, dword [esp + 0x19c]
test eax, eax
jle 0x442e0d
mov edi, dword [ebp]
cmp esi, edi
jbe 0x44283b
movzx edi, byte [esp + 0x1e]
xchg edi, eax
test al, al
xchg edi, eax
je 0x442e07
mov dword [esp + 0x20], esi
mov dword [esp], ebp
mov eax, dword [esp + 0x160]
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.0043e9f0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x15c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
mov ebx, dword [esp + 0x168]
mov dword [esp], ebx
mov ebp, dword [esp + 0x160]
mov dword [esp + 4], ebp
mov dword [esp + 8], 2
call fcn.0043ec70
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x442c4a
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x15c], eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x3c], edx
mov ebx, dword [esp + 0x168]
mov dword [esp], ebx
mov ebp, dword [esp + 0x160]
mov dword [esp + 4], ebp
call fcn.0043e750
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
cmp eax, 0xf
je 0x442bf8
mov dword [esp + 0x30], eax
mov dword [esp + 0x150], ecx
call fcn.00427a40
mov eax, dword [esp + 0x150]
mov dword [esp], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
call fcn.00428470
lea eax, [0x5db029]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x180], eax
xor ecx, ecx
jmp 0x442971
test byte [eax], al
mov edx, dword [eax + ecx*4]
mov dword [esp + 0x78], edx
call fcn.00427a40
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
call fcn.00427ab0
mov eax, dword [esp + 0x44]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x180]
mov edx, dword [esp + 0x1b8]
shr edx, 2
cmp ecx, edx
jae 0x4429d9
cmp ecx, 0xa
jae 0x4429b9
mov dword [esp + 0x44], ecx
test ecx, ecx
je 0x44293c
call fcn.00427a40
lea eax, [0x5db066]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00428470
call fcn.00427ab0
mov eax, dword [esp + 0x180]
mov ecx, dword [esp + 0x44]
jmp 0x44293c
call fcn.00427a40
lea eax, [0x5db55c]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.00428470
call fcn.00427ab0
call fcn.00427a40
lea eax, [0x5db064]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00428470
call fcn.00427ab0
call fcn.00427a40
lea eax, [0x5db048]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
mov eax, dword [esp + 0x15c]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
call fcn.00428470
lea eax, [0x5db033]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.004282c0
call fcn.00427ab0
mov eax, dword [esp + 0x19c]
mov ecx, dword [esp + 0x168]
mov edx, dword [ecx]
cmp eax, edx
ja 0x442baa
mov eax, dword [esp + 0x158]
mov edx, dword [eax + 0x18]
mov ebx, dword [edx + 0x64]
test ebx, ebx
jle 0x442ba1
mov edx, dword [edx + 0x4c]
mov ebx, dword [esp + 0x1d0]
cmp edx, ebx
jne 0x442b92
mov eax, dword [esp + 0x1ac]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0x1a8]
mov dword [esp + 0x74], ecx
mov edx, dword [esp + 0x19c]
mov dword [esp + 0x60], edx
call fcn.00427a40
lea eax, [0x5db2cd]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00428470
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db2e9]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00428470
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db2e1]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00428470
mov eax, dword [esp + 0x60]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
call fcn.00427ab0
call fcn.00427a40
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
mov eax, dword [esp + 0x2c]
inc eax
mov ecx, dword [esp + 0x1d8]
mov edx, dword [esp + 0x184]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x168]
movzx esi, byte [esp + 0x1f]
mov edi, eax
mov eax, dword [esp + 0x84]
jmp 0x44236a
mov edx, dword [esp + 0x40]
cmp edx, 2
jge 0x442a98
jmp 0x442b41
mov ebx, dword [esp + 0x1d0]
jmp 0x442b92
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], edx
call fcn.00427a40
lea eax, [0x5db052]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00428470
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x74]
sub eax, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
call fcn.00427ab0
mov ecx, dword [esp + 0x168]
jmp 0x442a71
mov dword [esp + 0x5c], eax
mov dword [esp + 0x17c], ecx
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x5dda7d]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0xf
call fcn.0044bd60
movzx eax, byte [esp + 0x10]
test al, al
je 0x442c3a
mov eax, 5
lea ecx, [0x5db679]
jmp 0x4428e8
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x17c]
jmp 0x4428e8
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x168]
mov dword [esp], eax
mov ecx, dword [esp + 0x160]
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
mov edx, dword [esp + 0x20]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0
call fcn.0043ebf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x15c]
mov ebx, dword [esp + 0x3c]
jmp 0x442de9
mov dword [esp + 0x58], ecx
mov dword [esp + 0x178], edx
mov dword [esp + 0x80], ebx
shl eax, 4
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0x180]
mov edx, dword [ecx + eax + 0xc]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x168]
mov dword [esp], edx
mov ebx, dword [esp + 0x160]
mov dword [esp + 4], ebx
call fcn.0043e7c0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x154], ecx
call fcn.00427a40
mov eax, dword [esp + 0x154]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.00428470
lea eax, [0x5db6f7]
mov dword [esp], eax
mov dword [esp + 4], 6
call fcn.00428470
call fcn.00427ab0
call fcn.00427a40
lea eax, [0x5db048]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
mov eax, dword [esp + 0x178]
mov dword [esp], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
call fcn.00428470
lea eax, [0x5db033]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
mov eax, dword [esp + 0x80]
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.004282c0
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x180]
mov edx, dword [ecx + eax + 4]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x168]
mov dword [esp], edx
mov ebx, dword [esp + 0x160]
mov dword [esp + 4], ebx
call fcn.0043e830
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
mov ebx, dword [esp + 0x180]
mov ebp, dword [ebx + eax + 8]
mov eax, dword [eax + ebx]
mov ebx, ebp
cmp eax, 0xffffffff
je 0x442dfe
cmp eax, 0x100000
jb 0x442c9b
jmp 0x4435dd
mov eax, edx
mov edx, ebx
jmp 0x4428ae
dec esi
jmp 0x44283b
test edi, 2
je 0x442825
jmp 0x44283b
mov dword [esp], ebp
mov eax, dword [esp + 0x160]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x1d0]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x2c]
test edx, edx
sete bl
mov byte [esp + 0xc], bl
call fcn.004441a0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x442e5b
mov eax, dword [esp + 0x2c]
jmp 0x442b66
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x1d8]
mov edx, dword [esp + 0x184]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x168]
movzx esi, byte [esp + 0x1f]
mov edi, dword [esp + 0x1e8]
jmp 0x442816
mov esi, dword [esp + 0x19c]
mov ecx, dword [esp + 0x38]
test ecx, ecx
jle 0x443048
mov edi, dword [ebp]
cmp esi, edi
jbe 0x44303e
movzx edi, byte [esp + 0x1e]
xchg edi, eax
test al, al
xchg edi, eax
je 0x443038
mov dword [esp + 0x24], esi
mov dword [esp], ebp
mov eax, dword [esp + 0x160]
mov dword [esp + 4], eax
mov dword [esp + 8], 2
call fcn.0043ec70
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x442f11
mov eax, dword [esp + 0x1d4]
lea ebx, [eax - 1]
mov ecx, dword [esp + 0x1d8]
mov edx, dword [esp + 0x184]
mov ebp, dword [esp + 0x168]
movzx esi, byte [esp + 0x1f]
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
jmp 0x44236b
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x168]
mov dword [esp], eax
mov ecx, dword [esp + 0x160]
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
mov edx, dword [esp + 0x24]
mov dword [esp + 0xc], edx
lea edx, [esp + 0x90]
mov dword [esp + 0x10], edx
call fcn.0043ebf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x180]
mov edx, dword [esp + 0x1d4]
xor ebx, ebx
jmp 0x442f6b
dec edx
inc ebx
shl eax, 4
mov eax, dword [eax + ecx]
test eax, eax
jl 0x442f7f
test edx, edx
jle 0x442f7f
cmp eax, 0x100000
jb 0x442f63
jmp 0x4435f2
test edx, edx
jle 0x442fad
lea ebx, [edx - 1]
mov ecx, dword [esp + 0x1d8]
mov edx, dword [esp + 0x184]
mov ebp, dword [esp + 0x168]
movzx esi, byte [esp + 0x1f]
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
jmp 0x44236b
mov eax, dword [esp + 0x19c]
mov ecx, dword [esp + 0x38]
cmp ecx, 0x100000
jae 0x4435eb
mov ebp, dword [esp + 0x1d8]
mov dword [ebp + ecx*4], eax
lea eax, [ecx + 1]
mov esi, dword [esp + 0x1dc]
cmp eax, esi
jge 0x443034
lea edi, [0x59a660]
mov dword [esp + 0x18c], edi
lea edi, [0x5ed9bc]
mov dword [esp + 0x190], edi
lea edi, [esp + 0x18c]
add edi, 4
mov esi, dword [edi]
test byte [edi], al
mov esi, dword [esi]
add ebx, esi
cmp eax, 0x100000
jae 0x4435e4
mov dword [ebp + ecx*4 + 4], ebx
mov ecx, ebp
mov ebp, dword [esp + 0x168]
movzx esi, byte [esp + 0x1f]
mov ebx, edx
mov edx, dword [esp + 0x184]
jmp 0x44235c
mov eax, ecx
jmp 0x443018
dec esi
jmp 0x442eb9
movzx edi, byte [esp + 0x1e]
jmp 0x442eb9
mov edi, dword [esp + 0x1e8]
test edi, 2
jne 0x443063
mov edi, dword [esp + 0x174]
jmp 0x442e9f
movzx edi, byte [esp + 0x1e]
jmp 0x442eb9
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x1d4]
jmp 0x44235c
lea ecx, [esp + 0x194]
mov dword [esp], ecx
mov ebx, dword [esp + 0x1e4]
mov dword [esp + 4], ebx
mov ebp, dword [eax]
mov edx, eax
call ebp
movzx eax, byte [esp + 8]
test al, al
je 0x4430d0
mov ecx, dword [esp + 0x1d8]
test ecx, ecx
mov eax, dword [esp + 0x1e0]
mov edx, dword [esp + 0x184]
mov ebp, dword [esp + 0x168]
movzx esi, byte [esp + 0x1f]
mov edi, dword [esp + 0x174]
jmp 0x44232e
mov eax, dword [esp + 0x38]
mov dword [esp + 0x1ec], eax
add esp, 0x1c0
ret
test eax, eax
jmp 0x442318
mov dword [esp + 0x1a0], 0
jmp 0x4422fb
mov eax, dword [esp + 0x1ac]
mov dword [esp + 0x1b4], eax
lea eax, [esp + 0x194]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov ecx, dword [esp + 0x160]
mov dword [esp + 8], ecx
mov byte [esp + 0xc], bl
mov dword [esp + 0x10], 0
call fcn.00443790
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x1bc], ecx
mov eax, dword [esp + 0x1e0]
movzx ecx, byte [esp + 0x1e]
mov edx, dword [esp + 0x184]
mov ebp, dword [esp + 0x168]
movzx esi, byte [esp + 0x1f]
mov edi, dword [esp + 0x188]
jmp 0x442513
mov eax, dword [esp + 0x1a4]
test eax, eax
jne 0x443190
mov eax, dword [esp + 0x1ac]
add eax, 0xfffffffc
mov eax, dword [eax]
mov dword [esp + 0x1a4], eax
mov eax, dword [esp + 0x1a4]
mov dword [esp], eax
call fcn.0043e1a0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x4431d0
mov edx, dword [esp + 0x184]
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x188]
mov ebx, ecx
movzx ecx, byte [esp + 0x1e]
jmp 0x4424d3
mov edx, dword [esp + 0x1e0]
test edx, edx
jne 0x443600
jmp 0x4431ab
mov ebx, dword [0x7004c0]
cmp ebx, eax
jne 0x4431f5
mov eax, 1
jmp 0x4424b5
mov ebx, dword [0x7004b8]
cmp ebx, eax
jne 0x443209
mov eax, 1
jmp 0x4424b5
mov ebx, dword [0x7004bc]
cmp ebx, eax
jne 0x44321d
mov eax, 1
jmp 0x4424b5
mov ebx, dword [0x7004f0]
cmp ebx, eax
jne 0x443231
mov eax, 1
jmp 0x4424b5
mov ebx, dword [0x700474]
test ebx, ebx
je 0x443245
cmp eax, ebx
sete al
jmp 0x4424b5
xor eax, eax
jmp 0x4424b5
mov eax, dword [esp + 0x1a8]
mov esi, dword [esp + 0x1e8]
test esi, 4
je 0x44334c
mov esi, dword [ebp]
mov edi, dword [0x700508]
cmp edi, esi
jne 0x443341
mov esi, dword [esp + 0x158]
mov edi, dword [esi + 0x18]
mov edi, dword [edi]
mov esi, dword [esp + 0x1d0]
cmp edi, esi
jne 0x443336
mov edi, dword [esi + 0x18]
mov edi, dword [edi + 0x4c]
test edi, edi
je 0x44332e
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x1a8], eax
mov edx, dword [esi + 0x18]
mov edx, dword [edx + 0x4c]
mov ebx, dword [edx + 0xb8]
mov edx, dword [edx + 0xbc]
mov dword [esp + 0x28], eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x184], ebx
mov dword [esp], ebp
mov ecx, dword [esp + 0x160]
mov dword [esp + 4], ecx
mov esi, dword [esp + 0x19c]
mov dword [esp + 8], esi
lea esi, [esp + 0x90]
mov dword [esp + 0xc], esi
call fcn.0043ea50
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
lea eax, [ecx + eax + 4]
mov dword [esp + 0x1ac], eax
movzx ecx, byte [esp + 0x1e]
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x188]
mov ebx, dword [esp + 0x50]
mov edx, dword [esp + 0x184]
jmp 0x44249b
mov edi, edx
mov edx, ebx
mov ebx, edi
jmp 0x4432bc
mov edi, edx
mov edx, ebx
mov ebx, edi
jmp 0x4432bc
mov esi, edx
mov edx, ebx
mov ebx, esi
jmp 0x4432bc
mov dword [esp + 0x88], eax
mov eax, edx
mov edx, ebx
mov ebx, eax
mov eax, dword [esp + 0x88]
jmp 0x4432bc
mov eax, edi
mov ecx, dword [esp + 0x38]
mov edi, esi
jmp 0x442560
mov ecx, eax
mov eax, edi
mov edi, esi
jmp 0x442560
mov eax, dword [esp + 0x1e0]
test eax, eax
jne 0x4436cd
mov dword [esp + 0x1ec], 0
add esp, 0x1c0
ret
mov edi, dword [esp + 0x1e0]
test edi, edi
xchg ebp, ebx
setne bl
xchg ebp, ebx
xor ebp, 1
mov edi, dword [esp + 0x40]
xchg ebp, eax
mov byte [esp + 0x1f], al
xchg ebp, eax
mov ebp, dword [esp + 0x1d8]
jmp 0x442247
mov ebx, dword [ecx + 0x20]
mov edx, dword [ecx + 0x1c]
jmp 0x4421f9
mov ecx, dword [esp + 0x1d0]
mov ebx, dword [esp + 0x1c4]
jmp 0x4421f9
mov ecx, dword [esp + 0x1d0]
mov ebx, dword [esp + 0x1c4]
mov edx, dword [esp + 0x1c8]
jmp 0x4421f9
mov ecx, dword [esp + 0x1e0]
jmp 0x442181
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], ebx
mov dword [esp + 0x38], edi
mov eax, dword [ecx + 0x54]
mov dword [esp + 0x80], eax
mov edx, dword [ecx + 0x50]
mov dword [esp + 0x7c], edx
call fcn.00427a40
lea eax, [0x5dc4e7]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.00428470
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
call fcn.004282c0
lea eax, [0x5dc63b]
mov dword [esp], eax
mov dword [esp + 4], 0xb
call fcn.00428470
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db4fd]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.00428470
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
mov eax, dword [esp + 0x1d0]
mov ecx, dword [eax]
mov dword [esp + 0x78], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x74], eax
call fcn.00427a40
lea eax, [0x5dbdcd]
mov dword [esp], eax
mov dword [esp + 4], 8
call fcn.00428470
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db02e]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db3e5]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00428470
mov eax, dword [esp + 0x38]
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.004282c0
lea eax, [0x5db4e9]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.00428470
mov eax, dword [esp + 0x1dc]
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.004282c0
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
lea eax, [0x5e4706]
mov dword [esp], eax
mov dword [esp + 4], 0x23
call fcn.00427230
ud2
lea eax, [0x5e2b55]
mov dword [esp], eax
mov dword [esp + 4], 0x1d
call fcn.00427230
ud2
call fcn.00425c90
ud2
call fcn.00425c90
ud2
call fcn.00425c90
ud2
call fcn.00425c90
ud2
call fcn.00425c90
ud2
call fcn.00425c90
ud2
mov eax, dword [esp + 0x168]
mov dword [esp], eax
mov eax, dword [esp + 0x160]
mov dword [esp + 4], eax
call fcn.0043e750
mov eax, dword [esp + 8]
mov dword [esp + 0x184], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x1a4]
mov dword [esp + 0x78], edx
call fcn.00427a40
lea eax, [0x5e4268]
mov dword [esp], eax
mov dword [esp + 4], 0x22
call fcn.00428470
mov eax, dword [esp + 0x184]
mov dword [esp], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 4], eax
call fcn.00428470
lea eax, [0x5dce25]
mov dword [esp], eax
mov dword [esp + 4], 0xd
call fcn.00428470
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
lea eax, [0x5de495]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.00427230
ud2
mov eax, dword [esp + 0x19c]
mov dword [esp + 0x78], eax
call fcn.00427a40
lea eax, [0x5df5eb]
mov dword [esp], eax
mov dword [esp + 4], 0x14
call fcn.00428470
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00428350
lea eax, [0x5db046]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00428470
call fcn.00427ab0
lea eax, [0x5dc537]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.00427230
ud2
lea eax, [0x5e8873]
mov dword [esp], eax
mov dword [esp + 4], 0x39
call fcn.00427230
ud2
lea eax, [0x5e6230]
mov dword [esp], eax
mov dword [esp + 4], 0x2b
call fcn.00427230
ud2
lea eax, [0x5e84fc]
mov dword [esp], eax
mov dword [esp + 4], 0x37
call fcn.00427230
ud2
call fcn.0044a520
jmp fcn.00442130