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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x12c
push ebx
push esi
push edi
lea eax, [esp + 0x18]
mov esi, ecx
push 4
push eax
mov dword [esp + 0x28], esi
call fcn.00577d48
add esp, 8
lea ecx, [esp + 0x18]
push ecx
lea edx, [ebp + 8]
push edx
lea ecx, [esi + 0x14]
call fcn.005b3c38
mov edi, dword [ebp + 0xc]
xor ebx, ebx
test eax, eax
je 0x5bf814
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov edx, dword [eax + 0x34]
call edx
test eax, eax
je 0x5bf354
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov eax, dword [esp + 0x18]
cmp eax, ebx
mov dword [ecx], 0xc000017c
je 0x5c06f3
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 0x20
lea ecx, [esp + 0x10]
push 4
push ecx
call fcn.00577d48
add esp, 8
lea edx, [esp + 0x10]
push edx
lea eax, [ebp + 8]
mov ecx, esi
add ecx, 0x3c
push eax
call fcn.005b3c38
test eax, eax
je 0x5bf62b
mov ecx, dword [esp + 0x10]
cmp edi, dword [ecx + 8]
jbe 0x5bf62b
lea ecx, [esp + 0x28]
call fcn.005b0a58
lea ecx, [esp + 0x34]
call fcn.005b0a58
mov edx, dword [esp + 0x10]
mov esi, dword [edx + 8]
xor ebx, ebx
cmp esi, edi
jae 0x5bf3c8
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [esp + 0x28]
push eax
call edx
cmp eax, ebx
jne 0x5bf429
add esi, 1
cmp esi, edi
jb 0x5bf3aa
mov eax, dword [esp + 0x10]
mov dword [eax + 8], edi
mov eax, dword [ebp + 0x10]
sub eax, ebx
je 0x5bf5e9
sub eax, 1
je 0x5bf591
sub eax, 1
je 0x5bf507
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x24]
mov dword [ecx], ebx
lea ecx, [esp + 0x34]
mov dword [edx], 0xc000000d
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005b0b78
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5c06e3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x10], ebx
jmp 0x5c06e3
cmp eax, 1
jne 0x5bf46b
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0x8000001a
lea ecx, [esp + 0x34]
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005b0b78
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5c06e3
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x10], ebx
jmp 0x5c06e3
cmp dword [0x100c3710], ebx
je 0x5bf4ca
push 0x10082e80
push eax
lea ecx, [esp + 0x98]
call fcn.00574528
push eax
push 0x10090ce8
push 0x10091200
lea ecx, [esp + 0x74]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x64]
call fcn.00572078
lea ecx, [esp + 0x90]
call fcn.0055eab8
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0xc0000229
lea ecx, [esp + 0x34]
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005b0b78
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5c06e3
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x10], ebx
jmp 0x5c06e3
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x5bf51d
lea ecx, [esp + 0x34]
call fcn.005b0858
jmp 0x5bf51f
xor eax, eax
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
push ecx
mov ecx, dword [esp + 0x4c]
push eax
call fcn.005b1238
mov edx, dword [ebp + 0x24]
lea ecx, [esp + 0x34]
mov dword [edx], eax
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005b0b78
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5c06e3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x10], ebx
jmp 0x5c06e3
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x5bf5a9
lea ecx, [esp + 0x34]
call fcn.005b0858
mov esi, eax
jmp 0x5bf5ab
xor esi, esi
lea ecx, [esp + 0xa0]
push ecx
lea ecx, [esp + 0x2c]
call fcn.005b07e8
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
push esi
lea ecx, [esp + 0xb8]
push ecx
mov ecx, dword [esp + 0x3c]
call fcn.005b10f8
jmp 0x5bf55d
mov eax, dword [ebp + 0x20]
lea ecx, [esp + 0xa8]
push ecx
lea ecx, [esp + 0x2c]
mov dword [eax], ebx
call fcn.005b07e8
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
lea ecx, [esp + 0xbc]
push ecx
mov ecx, dword [esp + 0x38]
call fcn.005b1068
jmp 0x5bf55d
mov eax, dword [ebp + 0x10]
cmp eax, ebx
je 0x5bf665
cmp eax, 2
je 0x5bf665
cmp eax, 1
je 0x5bf665
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0xc000000d
lea ecx, [esp + 0x10]
call fcn.005b1928
lea ecx, [esp + 0x18]
call fcn.005b1928
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
lea edx, [esp + 0x88]
push edx
call fcn.005b1af8
mov esi, eax
mov eax, dword [esp + 0x14]
add esp, 4
cmp eax, ebx
je 0x5bf68b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x10], ebx
mov eax, dword [esi]
cmp eax, ebx
mov dword [esp + 0x10], eax
je 0x5bf69d
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
mov eax, dword [esp + 0x88]
cmp eax, ebx
je 0x5bf6b0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [esp + 0x14]
push 4
push eax
call fcn.00577d48
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx]
mov edx, dword [edx + 0x40]
add esp, 8
lea eax, [esp + 0x14]
push eax
call edx
mov esi, eax
cmp esi, ebx
je 0x5bf765
cmp dword [0x100c3710], ebx
je 0x5bf738
push 0x10082e80
push esi
lea ecx, [esp + 0x98]
call fcn.00574528
push eax
push 0x10090b64
push 0x10091200
lea ecx, [esp + 0x74]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x64]
call fcn.00572078
lea ecx, [esp + 0x90]
call fcn.0055eab8
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [eax], ebx
mov dword [ecx], esi
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x5bf40c
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x14], ebx
jmp 0x5bf40c
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
add ecx, 0xc
call fcn.005d9788
lea ecx, [esp + 0x28]
call fcn.005b0a58
lea ecx, [esp + 0x34]
call fcn.005b0a58
xor esi, esi
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [esp + 0x28]
push eax
call edx
cmp eax, ebx
jne 0x5bfc3f
add esi, 1
cmp esi, edi
jbe 0x5bf78a
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x20]
lea ecx, [esp + 0x10]
push ecx
lea edx, [ebp + 8]
push edx
lea ecx, [esi + 0x3c]
mov dword [eax + 8], edi
call fcn.005b3d68
mov eax, dword [ebp + 0x10]
sub eax, ebx
je 0x5bfdbb
sub eax, 1
je 0x5bfd63
sub eax, 1
je 0x5bfcdb
lea ecx, [esp + 0x34]
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005b0b78
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x5bf804
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5bf814
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [esp + 0x28]
call fcn.005c5db8
push ebx
lea eax, [esp + 0x2c]
push eax
push ebx
push 0x40
push 0x10082364
lea ecx, [esp + 0xc4]
call fcn.005b0888
mov ecx, eax
call fcn.005b0858
mov ecx, dword [ebp + 8]
push eax
push ecx
lea ecx, [esp + 0x138]
call fcn.005b0828
mov ecx, eax
call fcn.005b0858
mov ecx, dword [esp + 0x28]
push eax
call fcn.005b6788
test eax, eax
je 0x5c0156
lea ecx, [esp + 0x28]
call fcn.005b0408
mov ecx, eax
call fcn.005c6168
test eax, eax
jne 0x5c0196
lea edx, [esp + 0x14]
push edx
lea ecx, [esp + 0x2c]
call fcn.005c5f78
lea eax, [esp + 0x10]
push 4
push eax
call fcn.00577d48
mov esi, dword [esp + 0x28]
add esp, 8
lea ecx, [esp + 0x10]
push ecx
lea edx, [ebp + 8]
add esi, 0x60
push edx
mov ecx, esi
call fcn.005b3c38
test eax, eax
jne 0x5c0029
mov ecx, dword [ebp + 8]
lea eax, [esp + 0xc8]
push eax
push ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xd4], ebx
call fcn.005b87c8
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x44]
call eax
push 0x30
mov esi, eax
call fcn.0055bc48
add esp, 4
cmp eax, ebx
je 0x5bfdfb
mov ecx, dword [ebp + 0x10]
mov edx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0xcc]
mov dword [eax + 4], ebx
mov dword [eax], 0x1008fbc8
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x24], esi
mov dword [eax + 0x20], ebx
mov dword [eax + 0x28], edx
mov dword [eax + 0x2c], ecx
mov edx, dword [eax]
mov esi, eax
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5bf950
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp esi, ebx
mov dword [esp + 0x10], esi
je 0x5bf968
mov eax, dword [esi]
mov ecx, dword [eax + 4]
push esi
call ecx
mov edx, dword [esi]
mov eax, dword [edx + 8]
push esi
call eax
lea ecx, [esp + 0x24]
push 4
push ecx
call fcn.00577d48
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x5c]
add esp, 8
lea eax, [esp + 0x24]
push eax
call edx
mov esi, eax
cmp esi, ebx
jne 0x5c01a4
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
lea ecx, [esp + 0x80]
call fcn.005b0a58
lea eax, [esp + 0x1c]
push 4
push eax
call fcn.00577d48
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0xdc]
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x88]
push eax
call edx
mov esi, eax
cmp esi, ebx
jne 0x5bfe73
cmp dword [esp + 0xdc], ebx
jne 0x5bfe02
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x20]
call edx
test eax, eax
jne 0x5bfa09
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x28]
call edx
test eax, eax
je 0x5bfa1d
lea eax, [esp + 0x80]
mov ecx, eax
push eax
push ecx
lea ecx, [esp + 0x6c]
call fcn.005b1eb8
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x20]
call eax
test eax, eax
je 0x5bfc1a
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x28]
call eax
test eax, eax
jne 0x5bfc1a
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x6c]
lea eax, [esp + 0x74]
push eax
call edx
lea eax, [esp + 0x70]
push 4
push eax
call fcn.00577d48
mov eax, dword [esp + 0x7c]
mov esi, dword [eax]
add esp, 8
lea ecx, [esp + 0x70]
push ecx
push 0x20019
push 0x10082364
lea ecx, [esp + 0x9c]
mov edi, eax
add esi, 0x10
call fcn.005b0888
mov ecx, eax
call fcn.005b0858
mov edx, dword [esi]
push eax
mov ecx, edi
call edx
mov esi, eax
cmp esi, ebx
jne 0x5c0249
lea ecx, [esp + 0xe0]
call fcn.005b0a58
lea ecx, [esp + 0xec]
call fcn.005b0a58
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx]
mov eax, dword [eax + 0x48]
lea edx, [esp + 0xe0]
push edx
call eax
mov esi, eax
cmp esi, ebx
jne 0x5c02f3
lea ecx, [esp + 0x80]
push ecx
lea ecx, [esp + 0xe4]
call fcn.005b0b58
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x14]
call eax
cmp eax, ebx
mov dword [esp + 0xe8], eax
je 0x5bfb2b
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0xd4]
push eax
call edx
push eax
lea ecx, [esp + 0xf0]
call fcn.005b0b58
lea ecx, [esp + 0xd4]
call fcn.005b0b78
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0x14], ecx
lea esi, [eax + 0x14]
mov edi, eax
jne 0x5bfb4b
add ecx, 0x100
push ecx
lea ecx, [eax + 0xc]
call fcn.005b1c18
mov eax, dword [esi]
lea ecx, [eax + 1]
lea edx, [eax*8]
mov dword [esi], ecx
sub edx, eax
mov eax, dword [edi + 0xc]
lea ecx, [esp + 0xe0]
lea esi, [eax + edx*8]
push ecx
mov ecx, esi
call fcn.005b0b58
mov edx, dword [esp + 0xe8]
lea eax, [esp + 0xec]
push eax
lea ecx, [esi + 0xc]
mov dword [esi + 8], edx
call fcn.005b0b58
mov ecx, dword [esp + 0xf8]
mov dword [esi + 0x18], ecx
mov edx, dword [esp + 0xfc]
mov dword [esi + 0x1c], edx
mov eax, dword [esp + 0x100]
mov dword [esi + 0x20], eax
mov ecx, dword [esp + 0x104]
mov dword [esi + 0x24], ecx
mov edx, dword [esp + 0x108]
mov dword [esi + 0x28], edx
mov eax, dword [esp + 0x10c]
mov dword [esi + 0x2c], eax
mov ecx, dword [esp + 0x110]
mov dword [esi + 0x30], ecx
mov edx, dword [esp + 0x114]
lea ecx, [esp + 0xec]
mov dword [esi + 0x34], edx
call fcn.005b0b78
lea ecx, [esp + 0xe0]
call fcn.005b0b78
mov eax, dword [esp + 0x70]
cmp eax, ebx
je 0x5bfc06
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x74]
cmp eax, ebx
je 0x5bfc1a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x74], ebx
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x5bfc2e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], ebx
lea ecx, [esp + 0x80]
call fcn.005b0b78
jmp 0x5bf999
cmp eax, 1
jne 0x5bfc69
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0x8000001a
lea ecx, [esp + 0x34]
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005b0b78
jmp 0x5bf748
cmp dword [0x100c3710], ebx
je 0x5bfcc8
push 0x10082e80
push eax
lea ecx, [esp + 0x98]
call fcn.00574528
push eax
push 0x10090b64
push 0x10091200
lea ecx, [esp + 0x74]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x64]
call fcn.00572078
lea ecx, [esp + 0x90]
call fcn.0055eab8
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0xc0000229
jmp 0x5bfc52
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x5bfcf1
lea ecx, [esp + 0x34]
call fcn.005b0858
jmp 0x5bfcf3
xor eax, eax
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
push ecx
push eax
mov ecx, esi
call fcn.005b1238
mov edx, dword [ebp + 0x24]
lea ecx, [esp + 0x34]
mov dword [edx], eax
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005b0b78
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x5bf40c
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
jmp 0x5bf40c
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x5bfd7b
lea ecx, [esp + 0x34]
call fcn.005b0858
mov esi, eax
jmp 0x5bfd7d
xor esi, esi
lea ecx, [esp + 0xa0]
push ecx
lea ecx, [esp + 0x2c]
call fcn.005b07e8
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
push esi
lea ecx, [esp + 0xb8]
push ecx
mov ecx, dword [esp + 0x3c]
call fcn.005b10f8
jmp 0x5bfd2f
mov eax, dword [ebp + 0x20]
lea ecx, [esp + 0xa8]
push ecx
lea ecx, [esp + 0x2c]
mov dword [eax], ebx
call fcn.005b07e8
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
lea ecx, [esp + 0xbc]
push ecx
mov ecx, esi
call fcn.005b1068
jmp 0x5bfd2f
xor esi, esi
jmp 0x5bf940
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x5bfe16
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], ebx
lea ecx, [esp + 0x80]
call fcn.005b0b78
lea ecx, [esp + 0x64]
call fcn.005b1fb8
lea ecx, [esp + 0x64]
call fcn.005b1fb8
mov eax, dword [esp + 0x64]
cmp eax, ebx
je 0x5bfe4e
mov esi, dword [eax + 4]
push eax
call fcn.0055bc38
add esp, 4
cmp esi, ebx
mov eax, esi
jne 0x5bfe3c
mov eax, dword [esp + 0x24]
cmp eax, ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x64], ebx
je 0x5bf8bc
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x24], ebx
jmp 0x5bf8bc
cmp esi, 1
jne 0x5c047b
lea ecx, [esp + 0x1c]
call fcn.005b1928
lea ecx, [esp + 0x80]
call fcn.005b0b78
lea edi, [esi + 3]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], ebx
cmp dword [esp + 0x7c], edi
jae 0x5bfed4
mov eax, dword [esp + 0x78]
push eax
call fcn.00577f28
add esp, 4
cmp edi, ebx
jne 0x5bfec7
mov dword [esp + 0x78], ebx
jmp 0x5bfed4
push edi
call fcn.00577dd8
add esp, 4
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x78]
mov ecx, dword [0x100c3678]
lea edx, [esp + 0x11c]
push edx
mov edx, dword [esp + 0x90]
push edi
push eax
mov eax, dword [ebp + 8]
push ebx
add ecx, 0x764
push edx
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x24]
mov dword [esp + 0x94], edi
call eax
call eax
mov esi, eax
cmp esi, ebx
je 0x5bff30
cmp esi, 0xc0000023
je 0x5bff25
cmp esi, 0x80000005
jne 0x5bffcf
add edi, 0x100
jmp 0x5bfeaa
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0xc]
shr ecx, 1
push ecx
add eax, 0x10
push eax
lea ecx, [esp + 0xa8]
call fcn.005b0a68
lea ecx, [esp + 0xa8]
call fcn.005b0a58
lea edx, [esp + 0xa8]
push edx
lea eax, [esp + 0xa4]
push eax
lea ecx, [esp + 0x6c]
call fcn.005b19e8
lea ecx, [esp + 0xa8]
mov esi, eax
call fcn.005b0b78
cmp esi, ebx
jne 0x5bffc1
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x1c]
cmp dword [eax + 0x20], ecx
lea esi, [eax + 0x20]
mov dword [esp + 0xd0], eax
jne 0x5bffa6
add ecx, 0x100
push ecx
lea ecx, [eax + 0x18]
call fcn.005b1818
mov eax, dword [esi]
mov edx, dword [esp + 0xd0]
lea ecx, [eax + 1]
mov dword [esi], ecx
mov ecx, dword [edx + 0x18]
mov edx, dword [esp + 0x8c]
mov dword [ecx + eax*4], edx
lea ecx, [esp + 0xa0]
call fcn.005b0b78
jmp 0x5bffe2
cmp esi, 0x8000001a
jne 0x5c0385
mov dword [esp + 0x88], ebx
add dword [esp + 0x8c], 1
cmp dword [esp + 0x88], ebx
jne 0x5bfeaa
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x10]
push eax
lea ecx, [ebp + 8]
push ecx
add esi, 0x60
mov ecx, esi
call fcn.005b3d68
lea ecx, [esp + 0x78]
call fcn.0055e1b8
lea ecx, [esp + 0x64]
call fcn.005b2d68
lea ecx, [esp + 0x24]
call fcn.005b1928
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x44]
mov edi, dword [esp + 0x10]
call eax
cmp eax, dword [edi + 0x24]
jle 0x5c005a
lea ecx, [ebp + 8]
push ecx
mov ecx, esi
call fcn.00584a98
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5c00bd
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x5c00b9
mov edi, dword [ebp + 8]
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0xc0]
push eax
push edi
mov dword [esp + 0xc8], ebx
mov dword [esp + 0xcc], ebx
call fcn.005b87c8
test eax, eax
mov edx, dword [esp + 0x10]
je 0x5c04f5
mov ecx, dword [esp + 0xc0]
cmp ecx, dword [edx + 0x28]
mov esi, dword [esp + 0xc4]
lea eax, [edx + 0x28]
jne 0x5c00a8
cmp esi, dword [eax + 4]
je 0x5c04f5
mov dword [eax], ecx
mov dword [eax + 4], esi
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x5c00d1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x5c00e5
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0x30]
cmp eax, ebx
je 0x5c00f9
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x30], ebx
lea ecx, [esp + 0x28]
call fcn.005b0b78
lea ecx, [esp + 0x28]
call fcn.005c5db8
push ebx
lea eax, [esp + 0x2c]
push eax
push ebx
push 0x40
push 0x10082364
lea ecx, [esp + 0xc4]
call fcn.005b0888
mov ecx, eax
call fcn.005b0858
mov ecx, dword [ebp + 8]
push eax
push ecx
lea ecx, [esp + 0x138]
call fcn.005b0828
mov ecx, eax
call fcn.005b0858
mov ecx, dword [esp + 0x28]
push eax
call fcn.005b6788
test eax, eax
jne 0x5bf868
cmp dword [0x100c3710], ebx
je 0x5c0188
push 0x1009088c
push 0x10091200
lea ecx, [esp + 0x6c]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x64]
call fcn.00572078
mov edx, dword [ebp + 0x20]
mov dword [edx], 1
jmp 0x5c06b2
mov eax, dword [ebp + 0x20]
mov dword [eax], 1
jmp 0x5c06b2
cmp dword [0x100c3710], ebx
je 0x5c0203
push 0x10082e80
push esi
lea ecx, [esp + 0x98]
call fcn.00574528
push eax
push 0x100911d8
push 0x10091200
lea ecx, [esp + 0x74]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x64]
call fcn.00572078
lea ecx, [esp + 0x90]
call fcn.0055eab8
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [eax], ebx
mov dword [ecx], esi
lea ecx, [esp + 0x24]
call fcn.005b1928
lea ecx, [esp + 0x10]
call fcn.005b1928
lea ecx, [esp + 0x14]
call fcn.005b1928
lea ecx, [esp + 0x28]
call fcn.005b1b88
lea ecx, [esp + 0x18]
call fcn.005b1928
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
cmp dword [0x100c3710], ebx
je 0x5c02ae
push 0x10082e80
push esi
lea ecx, [esp + 0xb8]
call fcn.00574528
push eax
push 0x100911a4
push 0x10091200
lea ecx, [esp + 0xa0]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x90]
call fcn.00572078
lea ecx, [esp + 0xb0]
call fcn.0055eab8
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [edx], ebx
mov dword [eax], esi
lea ecx, [esp + 0x70]
call fcn.005b1928
lea ecx, [esp + 0x74]
call fcn.005b1928
lea ecx, [esp + 0x1c]
call fcn.005b1928
lea ecx, [esp + 0x80]
call fcn.005b0b78
lea ecx, [esp + 0x64]
call fcn.005b2d68
jmp 0x5c0213
cmp dword [0x100c3710], ebx
je 0x5c0358
push 0x10082e80
push esi
lea ecx, [esp + 0xb8]
call fcn.00574528
push eax
push 0x1009116c
push 0x10091200
lea ecx, [esp + 0xa0]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x90]
call fcn.00572078
lea ecx, [esp + 0xb0]
call fcn.0055eab8
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x24]
mov dword [ecx], ebx
and esi, 0xefffffff
lea ecx, [esp + 0xec]
mov dword [edx], esi
call fcn.005b0b78
lea ecx, [esp + 0xe0]
call fcn.005b0b78
jmp 0x5c02be
cmp dword [0x100c3710], ebx
je 0x5c03f2
push 0x10082e80
push esi
lea ecx, [esp + 0xb8]
call fcn.00573338
push eax
push 0x10091120
push 0x10091200
lea ecx, [esp + 0xa0]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x90]
call fcn.00572078
mov eax, dword [esp + 0xb4]
cmp eax, ebx
je 0x5c03f2
push eax
call fcn.00577f28
add esp, 4
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov eax, dword [esp + 0x78]
cmp eax, ebx
mov dword [ecx], esi
je 0x5c040d
push eax
call fcn.00577f28
add esp, 4
lea ecx, [esp + 0x64]
call fcn.005b1fb8
lea ecx, [esp + 0x64]
call fcn.005b1fb8
mov eax, dword [esp + 0x64]
cmp eax, ebx
je 0x5c043a
nop
mov esi, dword [eax + 4]
push eax
call fcn.0055bc38
add esp, 4
cmp esi, ebx
mov eax, esi
jne 0x5c0428
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x5c044e
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5c0462
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x5c06b2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x5c06ae
cmp dword [0x100c3710], ebx
je 0x5c04e0
push 0x10082e80
push esi
lea ecx, [esp + 0xb8]
call fcn.00574528
push eax
push 0x10090c1c
push 0x10091200
lea ecx, [esp + 0xa0]
call fcn.00573238
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.00572168
mov ecx, eax
call fcn.005732f8
mov ecx, eax
call fcn.00572168
lea ecx, [esp + 0x90]
call fcn.00572078
lea ecx, [esp + 0xb0]
call fcn.0055eab8
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [eax], ebx
mov dword [ecx], esi
jmp 0x5c02d0
mov eax, dword [edx + 0x14]
mov ecx, dword [ebp + 0xc]
cmp ecx, eax
jae 0x5c0625
lea eax, [ecx*8]
sub eax, ecx
mov ecx, dword [edx + 0xc]
lea esi, [ecx + eax*8]
mov eax, dword [ebp + 0x10]
sub eax, ebx
je 0x5c05e2
sub eax, 1
je 0x5c058b
sub eax, 1
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x5c053a
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0xc000000d
jmp 0x5c0692
cmp dword [esi + 8], ebx
je 0x5c0549
lea ecx, [esi + 0xc]
call fcn.005b0858
jmp 0x5c054b
xor eax, eax
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esi + 0x34]
push ecx
mov ecx, dword [esi + 0x30]
push edx
mov edx, dword [esi + 0x2c]
push ecx
mov ecx, dword [esi + 0x28]
push edx
mov edx, dword [esi + 0x24]
push ecx
mov ecx, dword [esi + 0x20]
push edx
mov edx, dword [esi + 0x1c]
push ecx
mov ecx, dword [esi + 0x18]
push edx
push ecx
mov ecx, dword [esp + 0x4c]
push eax
call fcn.005b1238
mov edx, dword [ebp + 0x24]
mov dword [edx], eax
jmp 0x5c044e
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
cmp dword [esi + 8], ebx
je 0x5c05a1
lea ecx, [esi + 0xc]
call fcn.005b0858
mov edi, eax
jmp 0x5c05a3
xor edi, edi
lea ecx, [esp + 0xb0]
push ecx
mov ecx, esi
call fcn.005b07e8
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esi + 0x1c]
push eax
mov eax, dword [esi + 0x18]
push ecx
push edx
push eax
push edi
lea ecx, [esp + 0xc8]
push ecx
mov ecx, dword [esp + 0x3c]
call fcn.005b10f8
mov edx, dword [ebp + 0x24]
mov dword [edx], eax
jmp 0x5c044e
mov eax, dword [ebp + 0x20]
lea ecx, [esp + 0xd4]
push ecx
mov ecx, esi
mov dword [eax], ebx
call fcn.005b07e8
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esi + 0x1c]
push eax
mov eax, dword [esi + 0x18]
push ecx
push edx
push eax
lea ecx, [esp + 0xe8]
push ecx
mov ecx, dword [esp + 0x38]
call fcn.005b1068
mov edx, dword [ebp + 0x24]
mov dword [edx], eax
jmp 0x5c044e
sub ecx, eax
mov eax, ecx
cmp eax, dword [edx + 0x20]
jae 0x5c0684
mov ecx, dword [ebp + 0x20]
mov dword [ecx], ebx
mov edx, dword [edx + 0x18]
mov ecx, dword [0x100c3678]
lea eax, [edx + eax*4]
mov edx, dword [ebp + 0x1c]
mov eax, dword [eax]
push edx
mov edx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edx
mov edx, dword [ecx + 0x764]
add ecx, 0x764
push eax
mov eax, dword [edx + 0x24]
push edi
call eax
call eax
mov ecx, dword [ebp + 0x24]
mov dword [ecx], eax
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x5c0462
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x5c045e
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0x8000001a
mov eax, dword [edx]
mov ecx, dword [eax + 8]
push edx
call ecx
mov eax, dword [esp + 0x14]
cmp eax, ebx
mov dword [esp + 0x10], ebx
je 0x5c06b2
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x5c06c6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0x30]
cmp eax, ebx
je 0x5c06da
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x30], ebx
lea ecx, [esp + 0x28]
call fcn.005b0b78
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x5c06f3
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 0x20