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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14c
push ebx
push esi
push edi
lea eax, [esp + 0x10]
mov esi, ecx
push 4
push eax
mov dword [esp + 0x30], esi
call fcn.00575280
add esp, 8
lea ecx, [esp + 0x10]
push ecx
lea edx, [ebp + 8]
push edx
lea ecx, [esi + 0x14]
call fcn.005bfbb0
test eax, eax
je 0x5e5fcb
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
lea edx, [esp + 0x2c]
push edx
call eax
lea ecx, [esp + 0x2c]
call fcn.005bd420
test eax, eax
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
je 0x5e5f5c
mov edx, dword [edx + 0xc]
lea eax, [esp + 0x14]
push eax
call edx
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov eax, dword [eax + 0x6c]
lea edx, [esp + 0x1c]
push edx
call eax
lea ecx, [esp + 0x18]
push 4
push ecx
call fcn.00575280
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
add esp, 8
lea edx, [esp + 0x18]
push edx
push 8
push 0x1008341c
lea ecx, [esp + 0xe4]
mov edi, eax
add esi, 0x10
call fcn.005bd3c0
mov ecx, eax
call fcn.005d8300
push eax
mov eax, dword [esi]
mov ecx, edi
call eax
mov esi, eax
xor edi, edi
cmp esi, edi
je 0x5e5ce5
cmp dword [0x10143d58], edi
je 0x5e5c73
push 0x10083b00
push esi
lea ecx, [esp + 0x48]
call fcn.005d98e0
push eax
push 0x10092a4c
push 0x1009350c
lea ecx, [esp + 0x6c]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.0058aeb0
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0x5c]
call fcn.00589c30
lea ecx, [esp + 0x40]
call fcn.00576e70
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
and esi, 0xefffffff
mov dword [ecx], edi
mov dword [edx], esi
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x5e5c97
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x1c]
cmp eax, edi
je 0x5e5cab
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], edi
mov eax, dword [esp + 0x14]
cmp eax, edi
je 0x5e5cbf
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], edi
lea ecx, [esp + 0x2c]
call fcn.005d82d0
mov eax, dword [esp + 0x10]
cmp eax, edi
je 0x5e6e75
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea eax, [esp + 0x20]
push 4
push eax
call fcn.00575280
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
add esp, 8
lea eax, [esp + 0x20]
push eax
call edx
mov esi, eax
cmp esi, edi
je 0x5e5d94
cmp dword [0x10143d58], edi
je 0x5e5d67
push 0x10083b00
push esi
lea ecx, [esp + 0x48]
call fcn.005d98e0
push eax
push 0x10093190
push 0x1009350c
lea ecx, [esp + 0x6c]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.0058aeb0
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0x5c]
call fcn.00589c30
lea ecx, [esp + 0x40]
call fcn.00576e70
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov eax, dword [esp + 0x20]
and esi, 0xefffffff
cmp eax, edi
mov dword [ecx], esi
je 0x5e5c83
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x20], edi
jmp 0x5e5c83
lea ecx, [esp + 0xf8]
call fcn.005d81b0
lea ecx, [esp + 0x104]
call fcn.005d81b0
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
lea edx, [esp + 0xf8]
push edx
call eax
mov esi, eax
cmp esi, edi
jne 0x5e5e2a
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
mov dword [ecx], edi
lea ecx, [esp + 0x104]
mov dword [edx], 0xc0000121
call fcn.005d82d0
lea ecx, [esp + 0xf8]
call fcn.005d82d0
lea ecx, [esp + 0x20]
call fcn.005a6e90
lea ecx, [esp + 0x18]
call fcn.005a6e90
lea ecx, [esp + 0x1c]
call fcn.005a6e90
lea ecx, [esp + 0x14]
call fcn.005a6e90
lea ecx, [esp + 0x2c]
call fcn.005d82d0
lea ecx, [esp + 0x10]
call fcn.005a6e90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp esi, 1
jne 0x5e5e9c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov edx, dword [eax + 0x24]
push esi
call edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], edi
lea ecx, [esp + 0x104]
call fcn.005d82d0
lea ecx, [esp + 0xf8]
call fcn.005d82d0
lea ecx, [esp + 0x20]
call fcn.005a6e90
lea ecx, [esp + 0x18]
call fcn.005a6e90
lea ecx, [esp + 0x1c]
call fcn.005a6e90
lea ecx, [esp + 0x14]
call fcn.005a6e90
lea ecx, [esp + 0x2c]
call fcn.005d82d0
lea ecx, [esp + 0x10]
call fcn.005a6e90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [0x10143d58], edi
je 0x5e5ef5
push 0x10083b00
push esi
lea ecx, [esp + 0x48]
call fcn.005d98e0
push eax
push 0x100934e0
push 0x1009350c
lea ecx, [esp + 0x6c]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.0058aeb0
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0x5c]
call fcn.00589c30
lea ecx, [esp + 0x40]
call fcn.00576e70
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [edx], edi
and esi, 0xefffffff
lea ecx, [esp + 0x104]
mov dword [eax], esi
call fcn.005d82d0
lea ecx, [esp + 0xf8]
call fcn.005d82d0
lea ecx, [esp + 0x20]
call fcn.005a6e90
lea ecx, [esp + 0x18]
call fcn.005a6e90
lea ecx, [esp + 0x1c]
call fcn.005a6e90
lea ecx, [esp + 0x14]
call fcn.005a6e90
lea ecx, [esp + 0x2c]
call fcn.005d82d0
lea ecx, [esp + 0x10]
call fcn.005a6e90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [edx + 0x34]
call eax
test eax, eax
je 0x5e5f76
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
xor edi, edi
mov dword [ecx], edi
mov dword [edx], edi
jmp 0x5e5cbf
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov edx, dword [eax + 0x2c]
call edx
xor edi, edi
cmp eax, edi
je 0x5e5f9b
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
and eax, 0xefffffff
mov dword [ecx], edi
mov dword [edx], eax
jmp 0x5e5cbf
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], edi
lea ecx, [esp + 0x2c]
call fcn.005d82d0
mov eax, dword [esp + 0x10]
cmp eax, edi
je 0x5e6e75
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea ecx, [esp + 0x84]
call fcn.005f0170
xor edi, edi
push edi
lea ecx, [esp + 0x88]
push ecx
push edi
push pe_nt_image_headers32
push 0x1008341c
lea ecx, [esp + 0xec]
call fcn.005bd3c0
mov ecx, eax
call fcn.005d8300
mov ebx, dword [ebp + 8]
push eax
push ebx
lea ecx, [esp + 0x74]
call fcn.005bd370
mov ecx, eax
call fcn.005d8300
push eax
mov ecx, esi
call fcn.005de4e0
test eax, eax
jne 0x5e60bb
cmp dword [0x10143d58], edi
je 0x5e6054
push 0x10092ccc
push 0x1009350c
lea ecx, [esp + 0x64]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0x5c]
call fcn.00589c30
cmp dword [esi + 0x38], 1
jne 0x5e60a1
push ebx
call fcn.005ea840
add esp, 4
test eax, eax
je 0x5e6082
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [edx], edi
lea ecx, [esp + 0x84]
mov dword [eax], edi
call fcn.005d9380
jmp 0x5e5cc8
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], 0xc0000229
lea ecx, [esp + 0x84]
call fcn.005d9380
jmp 0x5e5fae
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 1
lea ecx, [esp + 0x84]
call fcn.005d9380
jmp 0x5e5fae
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esp + 0x88]
call fcn.005f0090
lea ecx, [esp + 0x84]
call fcn.005edc00
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
mov dword [esp + 0x20], eax
mov eax, dword [edx + 0x28]
call eax
test eax, eax
jne 0x5e6891
jmp 0x5e60f5
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
mov eax, dword [edx + 0x20]
call eax
test eax, eax
jne 0x5e68b7
cmp dword [esi + 0x38], 1
jne 0x5e6e4e
mov ecx, dword [esp + 0x20]
call fcn.005ea6a0
test eax, eax
je 0x5e6408
mov ecx, dword [ebp + 8]
push ecx
mov ecx, esi
call fcn.005e0710
test eax, eax
jne 0x5e6991
lea edx, [esp + 0x38]
push 4
push edx
call fcn.00575280
lea eax, [esp + 0x44]
push 4
push eax
call fcn.00575280
mov ebx, dword [esp + 0x1c]
add esp, 0x10
cmp ebx, edi
mov dword [esp + 0x34], ebx
je 0x5e6165
mov ecx, dword [ebx]
mov edx, dword [ecx + 4]
push ebx
call edx
lea ecx, [esp + 0xb4]
call fcn.005ea7a0
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0xb4]
push eax
call fcn.005ea710
test eax, eax
je 0x5e62e7
lea ebx, [ebx]
lea ecx, [esp + 0xb4]
push ecx
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x13c]
push edx
call fcn.005ea6b0
mov esi, dword [0x10143fa4]
push edi
push pe_nt_image_headers32
push eax
push edi
lea ecx, [esp + 0x150]
mov dword [esp + 0x44], edi
add esi, 0x854
call fcn.005bd370
mov ecx, eax
call fcn.005d8300
mov edx, dword [esi]
push eax
push 1
lea eax, [esp + 0x3c]
push eax
mov eax, dword [edx + 0x24]
mov ecx, esi
call eax
call eax
mov esi, eax
neg esi
sbb esi, esi
lea ecx, [esp + 0x34]
add esi, 1
call fcn.00576590
cmp esi, edi
je 0x5e69a4
lea ecx, [esp + 0x1c]
push 4
push ecx
call fcn.00575280
mov edx, dword [ebx]
mov edx, dword [edx + 0x64]
add esp, 8
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0xb8]
push ecx
mov ecx, ebx
call edx
test eax, eax
je 0x5e629e
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
mov edx, dword [edx + 0x84]
lea eax, [esp + 0xb4]
push eax
push ebx
lea eax, [esp + 0xd0]
push eax
call edx
mov esi, eax
mov eax, dword [esp + 0x1c]
cmp eax, edi
je 0x5e625f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], edi
mov eax, dword [esi]
cmp eax, edi
mov dword [esp + 0x1c], eax
je 0x5e6275
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc8]
cmp ecx, edi
je 0x5e6293
mov eax, dword [ecx]
push ecx
mov ecx, dword [eax + 8]
call ecx
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc8], edi
push eax
push ebx
lea ecx, [esp + 0x40]
call fcn.005d9080
mov edx, dword [ebx]
mov eax, dword [edx + 8]
push ebx
call eax
mov ebx, dword [esp + 0x1c]
cmp ebx, edi
mov dword [esp + 0x34], ebx
je 0x5e62ce
mov ecx, dword [ebx]
mov edx, dword [ecx + 4]
push ebx
call edx
mov eax, dword [esp + 0x1c]
cmp eax, edi
je 0x5e62ce
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], edi
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0xb4]
push eax
call fcn.005ea710
test eax, eax
jne 0x5e6190
mov edx, dword [ebx]
mov eax, dword [edx + 0x24]
mov esi, dword [esp + 0x28]
push 1
mov ecx, ebx
call eax
mov ecx, dword [esi + 0xc]
push ecx
lea ecx, [esp + 0x84]
call fcn.005f0110
push edi
lea edx, [esp + 0x88]
push edx
push edi
push pe_nt_image_headers32
push 0x1008341c
lea ecx, [esp + 0x144]
call fcn.005bd3c0
mov ecx, eax
call fcn.005d8300
push eax
mov eax, dword [ebp + 8]
push eax
lea ecx, [esp + 0x158]
call fcn.005bd370
mov ecx, eax
call fcn.005d8300
push eax
mov ecx, esi
call fcn.005de4e0
test eax, eax
je 0x5e6a3a
lea ecx, [esp + 0x54]
push ecx
lea ecx, [esp + 0x88]
call fcn.005f0090
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
mov esi, dword [esp + 0xc]
call eax
mov edx, dword [esi]
mov edx, dword [edx + 0xc]
mov ecx, esi
mov dword [esp + 0x20], eax
call edx
mov ecx, dword [esp + 0x20]
cmp ecx, eax
je 0x5e6aae
mov eax, dword [esp + 0xc]
cmp eax, edi
je 0x5e639b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x54]
cmp eax, edi
mov dword [esp + 0xc], eax
je 0x5e63c3
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
mov eax, dword [esp + 0x54]
cmp eax, edi
je 0x5e63c3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x54], edi
lea ecx, [esp + 0x80]
call fcn.005f0140
mov eax, dword [ebx]
mov ecx, dword [eax + 8]
push ebx
call ecx
mov eax, dword [esp + 0x3c]
cmp eax, edi
je 0x5e63eb
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x3c], edi
mov eax, dword [esp + 0x38]
cmp eax, edi
je 0x5e686e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x38], edi
jmp 0x5e686e
lea eax, [esp + 0x14]
push 4
push eax
call fcn.00575280
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx + 0x5c]
add esp, 8
lea eax, [esp + 0x14]
push eax
call edx
mov ebx, eax
cmp ebx, edi
jne 0x5e6ad8
lea ecx, [esp + 0x78]
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
call fcn.005d81b0
lea eax, [esp + 0x18]
push 4
push eax
call fcn.00575280
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x80]
push eax
call edx
mov ebx, eax
cmp ebx, edi
jne 0x5e6512
jmp 0x5e6480
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov edx, dword [eax + 0x28]
call edx
test eax, eax
je 0x5e6b4f
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov edx, dword [eax + 0x20]
call edx
test eax, eax
jne 0x5e64b3
lea eax, [esp + 0x78]
mov ecx, eax
push eax
push ecx
lea ecx, [esp + 0x48]
call fcn.005d9730
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x5e64c7
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x18], edi
lea ecx, [esp + 0x78]
call fcn.005d82d0
lea ecx, [esp + 0x78]
call fcn.005d81b0
lea ecx, [esp + 0x18]
push 4
push ecx
call fcn.00575280
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x80]
push eax
call edx
mov ebx, eax
cmp ebx, edi
je 0x5e6480
cmp ebx, 1
jne 0x5e6dc8
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x5e652f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x18], edi
lea ecx, [esp + 0x78]
call fcn.005d82d0
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x5c]
push eax
push ecx
mov ecx, esi
mov dword [esp + 0x64], edi
mov dword [esp + 0x68], edi
call fcn.005d9bd0
test eax, eax
jne 0x5e6616
mov ebx, dword [esp + 0x5c]
cmp ebx, edi
je 0x5e6616
lea ecx, [esp + 0xcc]
call fcn.005d81b0
mov esi, dword [ebx + 8]
push esi
lea ecx, [esp + 0xd0]
mov dword [esp + 0xb0], edi
mov dword [esp + 0xb4], edi
call fcn.005d82b0
add esi, 8
push esi
lea ecx, [esp + 0xb0]
call fcn.005d9410
mov ebx, dword [ebx + 4]
lea ecx, [esp + 0xbc]
call fcn.005d81b0
lea edx, [esp + 0xbc]
push edx
lea eax, [esp + 0xd0]
push eax
lea ecx, [esp + 0x48]
call fcn.005d9160
lea ecx, [esp + 0xbc]
mov esi, eax
call fcn.005d82d0
cmp esi, edi
je 0x5e6bc3
mov eax, dword [esp + 0xac]
cmp eax, edi
je 0x5e65fe
push eax
call fcn.00575460
add esp, 4
mov dword [esp + 0xac], edi
mov dword [esp + 0xb0], edi
lea ecx, [esp + 0xcc]
call fcn.005d82d0
cmp ebx, edi
jne 0x5e6564
mov esi, dword [esp + 0x28]
lea ecx, [esp + 0x2c]
push 4
push ecx
call fcn.00575280
lea edx, [esp + 0x38]
push 4
push edx
call fcn.00575280
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x10]
add esp, 0x10
lea eax, [esp + 0xf0]
push eax
lea eax, [esp + 0xdc]
push eax
call edx
mov ecx, eax
call fcn.005d82e0
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov ebx, dword [esi + 0xc]
lea edx, [esp + 0xc4]
push edx
call eax
mov eax, dword [eax]
mov edx, dword [ebx]
mov edx, dword [edx + 0x84]
lea ecx, [esp + 0xf0]
push ecx
push eax
lea ecx, [esp + 0x2c]
push ecx
mov ecx, ebx
call edx
mov eax, dword [esp + 0xc4]
cmp eax, edi
je 0x5e669f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0xc4], edi
lea ecx, [esp + 0xd8]
call fcn.005d82d0
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov ebx, dword [esp + 0x24]
lea edx, [esp + 0x50]
push edx
call eax
mov ecx, dword [eax]
push ebx
push ecx
lea ecx, [esp + 0x34]
call fcn.005d9080
mov eax, dword [esp + 0x50]
cmp eax, edi
je 0x5e66e0
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x50], edi
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx]
mov eax, dword [edx + 0x24]
push 1
call eax
mov ecx, dword [esi + 0xc]
push ecx
lea ecx, [esp + 0x78]
call fcn.005f0110
push edi
lea edx, [esp + 0x88]
push edx
push edi
push pe_nt_image_headers32
push 0x1008341c
lea ecx, [esp + 0xf4]
call fcn.005bd3c0
mov ecx, eax
call fcn.005d8300
push eax
mov eax, dword [ebp + 8]
push eax
lea ecx, [esp + 0x158]
call fcn.005bd370
mov ecx, eax
call fcn.005d8300
push eax
mov ecx, esi
call fcn.005de4e0
test eax, eax
je 0x5e6c7b
lea ecx, [esp + 0x58]
push ecx
lea ecx, [esp + 0x88]
call fcn.005f0090
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
mov esi, dword [esp + 0x58]
call eax
mov edx, dword [esi]
mov ebx, eax
mov eax, dword [edx + 0xc]
mov ecx, esi
call eax
cmp eax, ebx
je 0x5e6d65
mov eax, dword [esp + 0xc]
cmp eax, edi
je 0x5e6789
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x58]
cmp eax, edi
mov dword [esp + 0xc], eax
je 0x5e67b1
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
mov eax, dword [esp + 0x58]
cmp eax, edi
je 0x5e67b1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x58], edi
lea ecx, [esp + 0x74]
call fcn.005f0140
mov eax, dword [esp + 0x24]
cmp eax, edi
je 0x5e67ce
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x24], edi
mov eax, dword [esp + 0x30]
cmp eax, edi
je 0x5e67e2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x30], edi
mov eax, dword [esp + 0x2c]
cmp eax, edi
je 0x5e67f6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x2c], edi
lea ecx, [esp + 0x5c]
call fcn.005d9b20
mov eax, dword [esp + 0x5c]
cmp eax, edi
je 0x5e6819
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6807
lea ecx, [esp + 0x40]
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], edi
call fcn.005d9830
lea ecx, [esp + 0x40]
call fcn.005d9830
mov eax, dword [esp + 0x40]
cmp eax, edi
je 0x5e6852
jmp 0x5e6840
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6840
mov eax, dword [esp + 0x14]
cmp eax, edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x40], edi
je 0x5e686e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], edi
lea ecx, [esp + 0x84]
call fcn.005edc00
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x20], eax
mov eax, dword [ecx]
mov edx, dword [eax + 0x28]
call edx
test eax, eax
je 0x5e60f1
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x20]
mov dword [eax], edi
call fcn.005ea6a0
mov ecx, dword [ebp + 0x10]
neg eax
sbb eax, eax
and eax, 0xfffffeb8
add eax, 0xc000017c
mov dword [ecx], eax
jmp 0x5e6e57
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
mov edx, dword [edx + 0x6c]
lea eax, [esp + 0x24]
push eax
call edx
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0xbc]
push eax
call fcn.005ea6e0
cmp word [esp + 0xbc], di
jne 0x5e6920
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [esp + 0x50]
push eax
call edx
mov ecx, dword [esp + 0x50]
mov eax, dword [ecx]
mov edx, dword [eax + 0x24]
push 1
call edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], edi
lea ecx, [esp + 0x50]
call fcn.005a6e90
lea ecx, [esp + 0x24]
call fcn.005a6e90
jmp 0x5e6e57
lea edx, [esp + 0x28]
push 4
push edx
call fcn.00575280
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
add esp, 8
lea edx, [esp + 0x28]
push edx
push 0x10000
lea edx, [esp + 0xc4]
push edx
call eax
cmp eax, edi
je 0x5e6976
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
and eax, 0xefffffff
mov dword [ecx], edi
mov dword [edx], eax
lea ecx, [esp + 0x28]
call fcn.005a6e90
lea ecx, [esp + 0x24]
call fcn.005a6e90
jmp 0x5e6e57
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, edi
jne 0x5e6950
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], edi
jmp 0x5e695f
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [edx], edi
mov dword [eax], 0xc0000121
jmp 0x5e6e57
cmp ebx, edi
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
mov dword [ecx], edi
mov dword [edx], 0xc0000034
je 0x5e69be
mov eax, dword [ebx]
mov ecx, dword [eax + 8]
push ebx
call ecx
mov eax, dword [esp + 0x3c]
cmp eax, edi
je 0x5e69d2
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x3c], edi
mov eax, dword [esp + 0x38]
cmp eax, edi
je 0x5e69e6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x38], edi
mov eax, dword [esp + 0xc]
cmp eax, edi
je 0x5e69fa
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0xc], edi
mov eax, dword [esp + 0x9c]
cmp eax, edi
je 0x5e6a14
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x9c], edi
mov eax, dword [esp + 0x8c]
cmp eax, edi
je 0x5e6a2e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x8c], edi
lea ecx, [esp + 0x84]
jmp 0x5e5cc3
cmp dword [0x10143d58], edi
je 0x5e6a6c
push 0x10092ccc
push 0x1009350c
lea ecx, [esp + 0x64]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0x5c]
call fcn.00589c30
cmp dword [esi + 0x38], 1
jne 0x5e6aa3
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], 0xc0000229
lea ecx, [esp + 0x80]
call fcn.005f0140
lea ecx, [esp + 0x34]
call fcn.005a6e90
lea ecx, [esp + 0x38]
call fcn.005d9350
jmp 0x5e6e57
mov edx, dword [ebp + 0xc]
mov dword [edx], 1
jmp 0x5e6a80
lea ecx, [esp + 0x38]
call fcn.005d9010
lea ecx, [esp + 0x54]
call fcn.005a6e90
lea ecx, [esp + 0x80]
call fcn.005f0140
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], edi
jmp 0x5e6a8c
cmp dword [0x10143d58], edi
je 0x5e6b31
push 0x10083b00
push ebx
lea ecx, [esp + 0x48]
call fcn.005d98e0
push eax
push 0x100934b8
push 0x1009350c
lea ecx, [esp + 0x6c]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.0058aeb0
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0x5c]
call fcn.00589c30
lea ecx, [esp + 0x40]
call fcn.00576e70
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
and ebx, 0xefffffff
mov dword [edx], edi
lea ecx, [esp + 0x14]
mov dword [eax], ebx
call fcn.005a6e90
jmp 0x5e6e57
mov ecx, dword [ebp + 0xc]
mov eax, dword [esp + 0x18]
cmp eax, edi
mov edx, dword [ebp + 0x10]
mov dword [ecx], edi
mov dword [edx], 0xc0000121
je 0x5e6b71
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x18], edi
lea ecx, [esp + 0x78]
call fcn.005d82d0
lea ecx, [esp + 0x40]
call fcn.005d9830
lea ecx, [esp + 0x40]
call fcn.005d9830
mov eax, dword [esp + 0x40]
cmp eax, edi
je 0x5e6ba6
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6b94
mov eax, dword [esp + 0x14]
cmp eax, edi
je 0x5e69e6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], edi
jmp 0x5e69e6
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov eax, dword [esp + 0xac]
cmp eax, edi
mov dword [ecx], 0xc0000121
je 0x5e6be5
push eax
call fcn.00575460
add esp, 4
lea ecx, [esp + 0xcc]
call fcn.005d82d0
lea ecx, [esp + 0x5c]
call fcn.005d9b20
mov eax, dword [esp + 0x5c]
cmp eax, edi
je 0x5e6c14
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6c02
lea ecx, [esp + 0x40]
call fcn.005d9830
lea ecx, [esp + 0x40]
call fcn.005d9830
mov eax, dword [esp + 0x40]
cmp eax, edi
je 0x5e6c42
mov edi, edi
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6c30
mov eax, dword [esp + 0x14]
cmp eax, edi
je 0x5e6c56
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x14], edi
mov eax, dword [esp + 0xc]
cmp eax, edi
je 0x5e6c6a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0xc], edi
lea ecx, [esp + 0x84]
call fcn.005d9380
jmp 0x5e5cc8
cmp dword [0x10143d58], edi
je 0x5e6cb3
push 0x10092ccc
push 0x1009350c
lea ecx, [esp + 0xe8]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0xe0]
call fcn.00589c30
cmp dword [esi + 0x38], 1
jne 0x5e6d1c
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], 0xc0000229
lea ecx, [esp + 0x74]
call fcn.005f0140
lea ecx, [esp + 0x24]
call fcn.005a6e90
lea ecx, [esp + 0x2c]
call fcn.005d9350
lea ecx, [esp + 0x5c]
call fcn.005d9b20
mov eax, dword [esp + 0x5c]
cmp eax, edi
je 0x5e6d05
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6cf3
lea ecx, [esp + 0x40]
call fcn.005da680
lea ecx, [esp + 0x14]
call fcn.005a6e90
jmp 0x5e6e57
mov edx, dword [ebp + 0xc]
lea ecx, [esp + 0x74]
mov dword [edx], 1
call fcn.005f0140
lea ecx, [esp + 0x24]
call fcn.005a6e90
lea ecx, [esp + 0x2c]
call fcn.005d9350
lea ecx, [esp + 0x5c]
call fcn.005d9b20
mov eax, dword [esp + 0x5c]
cmp eax, edi
je 0x5e6d05
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6d51
jmp 0x5e6d05
lea ecx, [esp + 0x2c]
call fcn.005d9010
lea ecx, [esp + 0x58]
call fcn.005a6e90
lea ecx, [esp + 0x74]
call fcn.005f0140
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [eax], edi
mov dword [ecx], edi
lea ecx, [esp + 0x24]
call fcn.005a6e90
lea ecx, [esp + 0x2c]
call fcn.005d9350
lea ecx, [esp + 0x5c]
call fcn.005d9b20
mov eax, dword [esp + 0x5c]
cmp eax, edi
je 0x5e6d05
mov esi, dword [eax + 4]
push eax
call fcn.00589c10
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x5e6db1
jmp 0x5e6d05
cmp dword [0x10143d58], edi
je 0x5e6e27
push 0x10083b00
push ebx
lea ecx, [esp + 0xe8]
call fcn.005d98e0
push eax
push 0x10093490
push 0x1009350c
lea ecx, [esp + 0x6c]
call fcn.0058adf0
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.00589d20
mov ecx, eax
call fcn.0058aeb0
mov ecx, eax
call fcn.00589d20
lea ecx, [esp + 0x5c]
call fcn.00589c30
lea ecx, [esp + 0xe0]
call fcn.00576e70
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [edx], edi
and ebx, 0xefffffff
lea ecx, [esp + 0x18]
mov dword [eax], ebx
call fcn.005a6e90
lea ecx, [esp + 0x78]
call fcn.005d82d0
jmp 0x5e6d05
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 1
lea ecx, [esp + 0xc]
call fcn.005a6e90
lea ecx, [esp + 0x84]
call fcn.005d9380
lea ecx, [esp + 0x10]
call fcn.005a6e90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc