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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x2c0]
cmp eax, dword [ecx + 8]
jbe 0x5be3db
sub esp, 0x340
mov eax, dword [esp + 0x344]
test byte [eax], al
lea ecx, [0x62b880]
mov dword [esp], ecx
lea edx, [eax + 0x64]
mov dword [esp + 4], edx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x62b880]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004b3990
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0x3c]
add ecx, dword [esp + 8]
mov dword [esp + 0x60], ecx
movzx edx, word [eax + 0x74]
mov dword [esp + 0x5c], edx
lea ebx, [0x62f220]
mov dword [esp], ebx
call fcn.0040b380
mov esi, dword [esp + 4]
mov dword [esp + 0x2b4], esi
mov eax, dword [esp + 0x344]
movzx ecx, word [eax + 0x66]
mov word [esp + 0x24], cx
lea edi, [esp + 0xac]
call fcn.0045f06c
lea ecx, [0x62f220]
mov dword [esp], ecx
lea edx, [esp + 0xac]
mov dword [esp + 4], edx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x62f220]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004b3990
mov eax, dword [esp + 8]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
lea ecx, [edx + ecx + 4]
xor edx, edx
jmp 0x5bd2eb
movzx ebp, word [esp + 0x26]
lea edx, [ebp + 1]
mov eax, dword [esp + 0x58]
mov ecx, ebx
mov dword [esp + 0x38], ecx
movzx ebx, word [esp + 0x24]
cmp dx, bx
jae 0x5bdf1a
mov word [esp + 0x26], dx
mov edx, dword [esp + 0x344]
mov dword [esp], edx
lea ebx, [0x5fd8e0]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x2b4]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.005b1250
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x5bdf05
mov esi, dword [esp + 0x2b4]
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
add ecx, edx
mov eax, 0
adc eax, 0
mov edx, dword [esp + 0x344]
mov ebx, dword [edx + 0x2b4]
cmp ebx, eax
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp dword [edx + 0x2b0], ecx
mov edi, ecx
setb cl
cmp ebx, eax
setl bl
and ebp, ecx
or ebx, ebp
test bl, bl
je 0x5bd393
mov dword [edx + 0x2b0], edi
mov dword [edx + 0x2b4], eax
lea edi, [esp + 0x314]
xor eax, eax
call fcn.0045ebb5
lea edi, [esp + 0x314]
call fcn.0045f06c
lea edi, [esp + 0x2e8]
lea esi, [esp + 0x314]
call fcn.0045f062
nop
lea ecx, [esp + 0x64]
mov dword [esp], ecx
lea ecx, [esp + 0x2e8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 8
call fcn.0044b5e0
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], edx
lea ecx, [0x6a497c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0xffffffff
call fcn.004c68f0
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2a4], ecx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x28], edx
lea edi, [esp + 0xac]
xor eax, eax
call fcn.0045ebb6
lea edi, [esp + 0x84]
mov esi, dword [esp + 0x2b4]
call fcn.0045f06c
lea ecx, [esp + 0xac]
mov dword [esp], ecx
lea ebx, [esp + 0x84]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0x28
call fcn.004025e0
movzx ecx, byte [esp + 0xc]
test cl, cl
jne 0x5bd48b
mov eax, dword [esp + 0x344]
xor ecx, ecx
jmp 0x5bd59a
mov dword [esp], 0
lea eax, [0x6403e0]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
mov ecx, dword [esp + 0x2a4]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x10], edx
lea ebx, [0x64b0dc]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0x19
call fcn.0044b3d0
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0x274]
mov edx, dword [esp + 0x1c]
mov ebx, dword [eax + 0x270]
mov ebp, dword [eax + 0x278]
mov esi, dword [esp + 0x20]
lea edi, [ecx + 1]
cmp ebp, edi
jae 0x5bd569
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x54], esi
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bd54a
mov dword [ebx + 0x270], eax
jmp 0x5bd555
lea edi, [ebx + 0x270]
call fcn.0045e940
mov edx, dword [esp + 0x2b0]
mov esi, dword [esp + 0x54]
mov ebx, eax
mov eax, dword [esp + 0x344]
lea ebp, [ecx + 1]
mov dword [eax + 0x274], ebp
lea ebp, [ebx + ecx*8 + 4]
mov dword [ebp], esi
mov ebp, dword [0x84c5a0]
lea edi, [ebx + ecx*8]
test ebp, ebp
jne 0x5bd58a
mov dword [edi], edx
jmp 0x5bd595
mov ecx, eax
mov eax, edx
call fcn.0045e940
mov eax, ecx
mov ecx, 1
mov edx, dword [esp + 0x2b4]
mov ebx, dword [edx + 0x10]
add ebx, dword [edx + 0x14]
cmp dword [eax + 0x2ac], ebx
jae 0x5bd6cf
mov dword [esp + 0x44], ecx
mov dword [esp], 0
lea eax, [0x6403e0]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
mov ecx, dword [esp + 0x2a4]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x10], edx
lea ebx, [0x64f818]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0x23
call fcn.0044b3d0
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0x274]
mov edx, dword [esp + 0x1c]
mov ebx, dword [eax + 0x270]
mov ebp, dword [eax + 0x278]
mov esi, dword [esp + 0x20]
lea edi, [ecx + 1]
cmp ebp, edi
jae 0x5bd695
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x54], esi
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bd676
mov dword [ebx + 0x270], eax
jmp 0x5bd681
lea edi, [ebx + 0x270]
call fcn.0045e940
mov edx, dword [esp + 0x2b0]
mov esi, dword [esp + 0x54]
mov ebx, eax
mov eax, dword [esp + 0x344]
lea ebp, [ecx + 1]
mov dword [eax + 0x274], ebp
lea ebp, [ebx + ecx*8 + 4]
mov dword [ebp], esi
mov ebp, dword [0x84c5a0]
lea edi, [ebx + ecx*8]
test ebp, ebp
jne 0x5bd6b6
mov dword [edi], edx
jmp 0x5bd6c1
mov ecx, eax
mov eax, edx
call fcn.0045e940
mov eax, ecx
mov edx, dword [esp + 0x44]
lea ecx, [edx + 1]
mov edx, dword [esp + 0x2b4]
mov dword [esp + 0x54], ecx
mov ebx, dword [edx + 0x14]
movzx ebp, byte [eax + 0x295]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5bd71c
lea edi, [esp + 0x1b4]
mov ebp, eax
xor eax, eax
call fcn.0045eb84
mov ecx, dword [ebp + 0x78]
mov esi, dword [ebp + 0x7c]
lea edx, [0x6353c0]
cmp ecx, edx
jne 0x5be3c4
lea edi, [esp + 0x1b4]
call fcn.0045ee78
mov ecx, dword [esp + 0x1d8]
jmp 0x5bd759
lea edi, [esp + 0xd4]
mov ebp, eax
xor eax, eax
call fcn.0045eb88
mov ecx, dword [ebp + 0x78]
mov esi, dword [ebp + 0x7c]
lea edx, [0x635900]
cmp ecx, edx
jne 0x5be3ae
lea edi, [esp + 0xd4]
call fcn.0045eea0
mov ecx, dword [esp + 0xf8]
lea edx, [0x6353c0]
cmp ecx, 0x200
jbe 0x5bd85e
test ecx, 1
je 0x5bd858
mov dword [esp + 0x40], ecx
mov esi, dword [ebp + 0x274]
lea edx, [esi + 1]
mov edi, ebx
mov ebx, dword [ebp + 0x270]
mov ecx, dword [ebp + 0x278]
cmp ecx, edx
jae 0x5bd7f4
mov dword [esp + 0x60], edi
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bd7dd
mov dword [ebx + 0x270], eax
jmp 0x5bd7e8
lea edi, [ebx + 0x270]
call fcn.0045e940
mov ebp, ebx
mov edi, dword [esp + 0x60]
mov esi, ecx
mov ebx, eax
xor eax, eax
lea ecx, [esi + 1]
mov dword [ebp + 0x274], ecx
mov ecx, dword [0x81fb20]
mov edx, dword [0x81fb24]
lea ebp, [ebx + esi*8 + 4]
mov dword [ebp], edx
mov edx, dword [0x84c5a0]
lea ebx, [ebx + esi*8]
test edx, edx
jne 0x5bd82b
mov dword [ebx], ecx
mov ecx, dword [esp + 0x40]
cmp ecx, 0x200
jmp 0x5bd847
mov edx, edi
mov edi, ebx
mov eax, ecx
call fcn.0045e940
mov ecx, dword [esp + 0x40]
cmp ecx, 0x200
mov eax, 0
mov edi, edx
lea edx, [0x6353c0]
mov ebx, edi
mov ebp, dword [esp + 0x344]
jmp 0x5bd85e
cmp ecx, 0x200
jb 0x5bd866
shr ebx, 9
shl ebx, 9
cmp dword [ebp + 0x2ac], ebx
jb 0x5bd879
mov eax, ebp
mov ecx, dword [esp + 0x54]
jmp 0x5bd98a
mov dword [esp], 0
lea eax, [0x6403e0]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
mov ecx, dword [esp + 0x2a4]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x10], edx
lea ebx, [0x653cd4]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0x34
call fcn.0044b3d0
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0x274]
mov edx, dword [esp + 0x1c]
mov ebx, dword [eax + 0x270]
mov ebp, dword [eax + 0x278]
mov esi, dword [esp + 0x20]
lea edi, [ecx + 1]
cmp ebp, edi
jae 0x5bd957
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x50], esi
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bd938
mov dword [ebx + 0x270], eax
jmp 0x5bd943
lea edi, [ebx + 0x270]
call fcn.0045e940
mov edx, dword [esp + 0x2b0]
mov esi, dword [esp + 0x50]
mov ebx, eax
mov eax, dword [esp + 0x344]
lea ebp, [ecx + 1]
mov dword [eax + 0x274], ebp
lea ebp, [ebx + ecx*8 + 4]
mov dword [ebp], esi
mov ebp, dword [0x84c5a0]
lea edi, [ebx + ecx*8]
test ebp, ebp
jne 0x5bd978
mov dword [edi], edx
jmp 0x5bd983
mov ecx, eax
mov eax, edx
call fcn.0045e940
mov eax, ecx
mov edx, dword [esp + 0x54]
lea ecx, [edx + 1]
mov edx, dword [esp + 0x2b4]
cmp dword [edx + 8], 0x10000000
jbe 0x5bdaba
mov dword [esp + 0x4c], ecx
mov dword [esp], 0
lea eax, [0x6403e0]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
mov ecx, dword [esp + 0x2a4]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x10], edx
lea ebx, [0x6514dc]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0x29
call fcn.0044b3d0
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0x274]
mov edx, dword [esp + 0x1c]
mov ebx, dword [eax + 0x270]
mov ebp, dword [eax + 0x278]
mov esi, dword [esp + 0x20]
lea edi, [ecx + 1]
cmp ebp, edi
jae 0x5bda80
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x54], esi
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bda61
mov dword [ebx + 0x270], eax
jmp 0x5bda6c
lea edi, [ebx + 0x270]
call fcn.0045e940
mov edx, dword [esp + 0x2b0]
mov esi, dword [esp + 0x54]
mov ebx, eax
mov eax, dword [esp + 0x344]
lea ebp, [ecx + 1]
mov dword [eax + 0x274], ebp
lea ebp, [ebx + ecx*8 + 4]
mov dword [ebp], esi
mov ebp, dword [0x84c5a0]
lea edi, [ebx + ecx*8]
test ebp, ebp
jne 0x5bdaa1
mov dword [edi], edx
jmp 0x5bdaac
mov ecx, eax
mov eax, edx
call fcn.0045e940
mov eax, ecx
mov edx, dword [esp + 0x4c]
lea ecx, [edx + 1]
mov edx, dword [esp + 0x2b4]
mov dword [esp + 0x54], ecx
mov ebx, dword [edx + 0xc]
mov dword [esp], eax
mov dword [esp + 4], ebx
call fcn.005b0fa0
cmp dword [esp + 8], 0x10000000
ja 0x5bdae7
mov eax, dword [esp + 0x344]
mov ecx, dword [esp + 0x54]
jmp 0x5bdbf8
mov dword [esp], 0
lea eax, [0x6403e0]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
mov ecx, dword [esp + 0x2a4]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x10], edx
lea ebx, [0x6502f2]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0x25
call fcn.0044b3d0
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0x274]
mov edx, dword [esp + 0x1c]
mov ebx, dword [eax + 0x270]
mov ebp, dword [eax + 0x278]
mov esi, dword [esp + 0x20]
lea edi, [ecx + 1]
cmp ebp, edi
jae 0x5bdbc5
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x50], esi
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bdba6
mov dword [ebx + 0x270], eax
jmp 0x5bdbb1
lea edi, [ebx + 0x270]
call fcn.0045e940
mov edx, dword [esp + 0x2b0]
mov esi, dword [esp + 0x50]
mov ebx, eax
mov eax, dword [esp + 0x344]
lea ebp, [ecx + 1]
mov dword [eax + 0x274], ebp
lea ebp, [ebx + ecx*8 + 4]
mov dword [ebp], esi
mov ebp, dword [0x84c5a0]
lea edi, [ebx + ecx*8]
test ebp, ebp
jne 0x5bdbe6
mov dword [edi], edx
jmp 0x5bdbf1
mov ecx, eax
mov eax, edx
call fcn.0045e940
mov eax, ecx
mov edx, dword [esp + 0x54]
lea ecx, [edx + 1]
mov dword [esp + 0x54], ecx
movzx edx, byte [eax + 0x295]
test dl, dl
je 0x5bdc40
lea edi, [esp + 0x1b4]
mov edx, eax
xor eax, eax
call fcn.0045eb84
mov ecx, dword [edx + 0x78]
mov esi, dword [edx + 0x7c]
lea ebx, [0x6353c0]
cmp ecx, ebx
jne 0x5be398
lea edi, [esp + 0x1b4]
call fcn.0045ee78
mov ecx, dword [esp + 0x1d8]
jmp 0x5bdc7d
lea edi, [esp + 0xd4]
mov edx, eax
xor eax, eax
call fcn.0045eb88
mov ecx, dword [edx + 0x78]
mov esi, dword [edx + 0x7c]
lea ebx, [0x635900]
cmp ecx, ebx
jne 0x5be382
lea edi, [esp + 0xd4]
call fcn.0045eea0
mov ecx, dword [esp + 0xf8]
lea ebx, [0x6353c0]
test ecx, ecx
je 0x5bddb2
mov ebp, dword [esp + 0x2b4]
mov ebx, dword [ebp + 0x14]
mov eax, ebx
mov ebx, edx
xor edx, edx
div ecx
test edx, edx
je 0x5bddbb
mov dword [esp], 0
lea eax, [0x6403e0]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
mov ecx, dword [esp + 0x2a4]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x10], ecx
lea ecx, [0x653b06]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], 0x33
call fcn.0044b3d0
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0x274]
mov edx, dword [esp + 0x1c]
mov ebx, dword [eax + 0x270]
mov ebp, dword [eax + 0x278]
mov esi, dword [esp + 0x20]
lea edi, [ecx + 1]
cmp ebp, edi
jae 0x5bdd7d
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x50], esi
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bdd5e
mov dword [ebx + 0x270], eax
jmp 0x5bdd69
lea edi, [ebx + 0x270]
call fcn.0045e940
mov edx, dword [esp + 0x2b0]
mov esi, dword [esp + 0x50]
mov ebx, eax
mov eax, dword [esp + 0x344]
lea ebp, [ecx + 1]
mov dword [eax + 0x274], ebp
lea ebp, [ebx + ecx*8 + 4]
mov dword [ebp], esi
mov ebp, dword [0x84c5a0]
lea edi, [ebx + ecx*8]
test ebp, ebp
jne 0x5bdd9e
mov dword [edi], edx
jmp 0x5bdda9
mov ecx, eax
mov eax, edx
call fcn.0045e940
mov eax, ecx
mov edx, dword [esp + 0x54]
lea ecx, [edx + 1]
jmp 0x5bddc1
mov ebx, edx
mov ebp, dword [esp + 0x2b4]
mov eax, ebx
mov ecx, dword [esp + 0x54]
cmp ecx, 3
jge 0x5bdf1a
mov ecx, dword [eax + 0x2bc]
movzx ecx, byte [ecx + 1]
test cl, cl
je 0x5bde2a
lea eax, [0x60b800]
mov dword [esp], eax
call fcn.0040b380
mov eax, dword [esp + 4]
mov dword [esp + 0x2b8], eax
lea ecx, [esp + 0x2e8]
mov dword [esp], ecx
mov edx, dword [esp + 0x344]
mov dword [esp + 4], edx
call fcn.005beda0
movsd xmm0, qword [esp + 8]
mov eax, dword [esp + 0x2b8]
movsd qword [eax], xmm0
mov dword [esp + 0x310], eax
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0xa4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 0xa0]
mov ebp, dword [eax + 0xa8]
cmp ebp, edx
jae 0x5bdea0
lea eax, [0x619f80]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0xa8], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5bde8c
mov dword [ebx + 0xa0], eax
jmp 0x5bde97
lea edi, [ebx + 0xa0]
call fcn.0045e940
mov ebx, eax
mov eax, dword [esp + 0x344]
lea edx, [ecx + 1]
mov dword [eax + 0xa4], edx
mov edx, dword [0x84c5a0]
imul ecx, ecx, 0x2c
lea edi, [ebx + ecx]
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x38]
add ebx, ecx
test edx, edx
jne 0x5bded4
lea esi, [esp + 0x2e8]
call fcn.0045f062
jmp 0x5bd2dd
mov dword [esp + 0x48], ebx
lea eax, [0x619f80]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x2e8]
mov dword [esp + 8], eax
call fcn.00410410
mov eax, dword [esp + 0x344]
mov ebx, dword [esp + 0x48]
jmp 0x5bd2dd
mov dword [esp + 0x348], ecx
mov dword [esp + 0x34c], edx
add esp, 0x340
ret
mov eax, dword [esp + 0x344]
mov ecx, dword [eax + 0xa0]
mov edx, dword [eax + 0xa4]
mov ebx, dword [eax + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.00408e70
mov eax, dword [esp + 0xc]
lea ecx, [0x6a568c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00488910
mov eax, dword [esp + 0x344]
movzx ecx, word [eax + 0x66]
test cx, cx
jbe 0x5bdf86
mov ebx, dword [eax + 0xa4]
test ebx, ebx
je 0x5bdf86
movzx ebx, cx
mov ebp, dword [esp + 0x58]
imul ebp, ebx
mov ebx, dword [esp + 0x38]
lea ecx, [ebx + ebp]
jmp 0x5bdf8a
mov ecx, dword [esp + 0x38]
mov ebx, dword [eax + 0xa4]
mov ebp, dword [eax + 0xa0]
test ebx, ebx
je 0x5bdfb8
mov dword [esp + 0x58], ebx
mov dword [esp + 0x38], ecx
xor edx, edx
xor esi, esi
xor edi, edi
xor edx, edx
mov dword [esp + 0x2a8], edx
xor edx, edx
jmp 0x5be0e2
xor edx, edx
xor ebx, ebx
test edx, edx
je 0x5bdfc9
mov ebp, dword [ebx]
xor esi, esi
jmp 0x5be0a2
xor edx, edx
test edx, edx
je 0x5bdfd3
cmp ecx, edx
jbe 0x5be024
cmp dword [eax + 0x2ac], ecx
jb 0x5be06b
mov edx, dword [eax + 0x290]
mov ebx, dword [eax + 0x288]
cmp ecx, edx
ja 0x5be098
mov dword [eax + 0x280], ecx
mov dword [eax + 0x284], edx
mov ecx, dword [0x84c5a0]
test ecx, ecx
jne 0x5be011
mov dword [eax + 0x27c], ebx
jmp 0x5be06b
lea edi, [eax + 0x27c]
mov ecx, eax
mov eax, ebx
call fcn.0045e940
mov eax, ecx
jmp 0x5be06b
cmp dword [eax + 0x2ac], edx
jb 0x5be06b
mov ebx, dword [eax + 0x290]
mov ebp, dword [eax + 0x288]
cmp edx, ebx
ja 0x5be08f
mov dword [eax + 0x280], edx
mov dword [eax + 0x284], ebx
mov ecx, dword [0x84c5a0]
test ecx, ecx
jne 0x5be05a
mov dword [eax + 0x27c], ebp
jmp 0x5be06b
lea edi, [eax + 0x27c]
mov ecx, eax
mov eax, ebp
call fcn.0045e940
mov eax, ecx
mov byte [eax + 0x29a], 1
mov dword [esp + 0x348], 0
mov dword [esp + 0x34c], 0
add esp, 0x340
ret
mov ecx, edx
mov edx, ebx
call fcn.0045ea10
call fcn.0045ea10
inc esi
mov ebp, ebx
mov ebx, edi
cmp esi, edx
jge 0x5be0b3
mov edi, ebx
mov ebx, dword [ebx + esi*4]
cmp ebp, ebx
ja 0x5be09d
mov ebx, ebp
jmp 0x5be09d
mov edx, ebp
jmp 0x5bdfcb
mov esi, dword [esp + 0x2ac]
add esi, 0x2c
mov eax, dword [esp + 0x344]
mov ebp, esi
mov esi, ecx
mov dword [esp + 0x2a8], edi
mov ecx, dword [esp + 0x38]
mov edi, edx
mov edx, ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x34], esi
mov dword [esp + 0x2ac], ebp
mov dword [esp + 0x30], edi
lea edi, [esp + 0x2bc]
mov esi, ebp
call fcn.0045f062
mov ecx, dword [esp + 0x2d0]
test ecx, ecx
jbe 0x5be320
mov dword [esp + 0x60], ecx
movzx ebp, byte [eax + 0x295]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5be15a
lea edi, [esp + 0x1b4]
mov ebp, eax
xor eax, eax
call fcn.0045eb84
mov ecx, dword [ebp + 0x78]
mov ebx, dword [ebp + 0x7c]
lea ebp, [0x6353c0]
cmp ecx, ebp
jne 0x5be36c
lea edi, [esp + 0x1b4]
mov esi, ebx
call fcn.0045ee78
mov ecx, dword [esp + 0x1d8]
jmp 0x5be199
lea edi, [esp + 0xd4]
mov ebp, eax
xor eax, eax
call fcn.0045eb88
mov ecx, dword [ebp + 0x78]
mov ebx, dword [ebp + 0x7c]
lea ebp, [0x635900]
cmp ecx, ebp
jne 0x5be356
lea edi, [esp + 0xd4]
mov esi, ebx
call fcn.0045eea0
mov ecx, dword [esp + 0xf8]
lea ebp, [0x6353c0]
mov dword [esp + 0x54], edx
cmp ecx, 0x200
jbe 0x5be2a5
test ecx, 1
je 0x5be29f
mov ebx, dword [esp + 0x344]
mov ebp, dword [ebx + 0x274]
mov esi, ebp
inc ebp
mov edi, ebp
mov ebp, dword [ebx + 0x270]
mov ebx, dword [ebx + 0x278]
cmp ebx, edi
jae 0x5be23d
mov dword [esp + 0x3c], ecx
lea eax, [0x60c800]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edi
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x344]
mov dword [ebx + 0x278], edx
mov edx, dword [0x84c5a0]
test edx, edx
jne 0x5be224
mov dword [ebx + 0x270], eax
jmp 0x5be22f
lea edi, [ebx + 0x270]
call fcn.0045e940
mov edx, dword [esp + 0x54]
mov esi, ecx
mov ebp, eax
xor eax, eax
mov ecx, dword [esp + 0x3c]
lea ebx, [esi + 1]
mov edi, ebp
mov ebp, dword [esp + 0x344]
mov dword [ebp + 0x274], ebx
mov ebx, dword [0x81fb20]
mov dword [esp + 0x2b0], ebx
mov ebp, dword [0x81fb24]
lea ebx, [edi + esi*8 + 4]
mov dword [ebx], ebp
mov ebx, dword [0x84c5a0]
lea edi, [edi + esi*8]
test ebx, ebx
jne 0x5be286
mov ebx, dword [esp + 0x2b0]
mov dword [edi], ebx
cmp ecx, 0x200
jmp 0x5be2a5
mov eax, dword [esp + 0x2b0]
call fcn.0045e940
cmp ecx, 0x200
mov eax, 0
jmp 0x5be2a5
cmp ecx, 0x200
jae 0x5be2ad
mov ecx, dword [esp + 0x60]
jmp 0x5be2b7
mov ecx, dword [esp + 0x60]
shr ecx, 9
shl ecx, 9
mov ebx, dword [esp + 0x30]
lea ebp, [ebx + 1]
mov esi, ebx
mov ebx, dword [esp + 0x34]
cmp ebx, ebp
jb 0x5be2d1
mov edi, dword [esp + 0x2a8]
jmp 0x5be31b
mov dword [esp + 0x2c], ecx
lea eax, [0x60c940]
mov dword [esp], eax
mov ecx, dword [esp + 0x2a8]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
call fcn.00447e40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebp, [ecx + 1]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x54]
mov edi, eax
mov ebx, esi
xor eax, eax
mov esi, dword [esp + 0x30]
mov dword [edi + esi*4], ecx
jmp 0x5be331
xor eax, eax
mov ebp, dword [esp + 0x30]
mov edi, dword [esp + 0x2a8]
mov ebx, dword [esp + 0x34]
mov ecx, ebx
lea ebx, [edx + 1]
mov edx, ebp
mov ebp, dword [esp + 0x58]
cmp ebp, ebx
jg 0x5be0ba
mov eax, dword [esp + 0x344]
mov ecx, dword [esp + 0x38]
mov ebx, edi
jmp 0x5bdfbc
mov dword [esp], ecx
mov dword [esp + 4], ebp
lea eax, [0x60c180]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], ebp
lea eax, [0x60c180]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea eax, [0x60c180]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea eax, [0x60c180]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x60c180]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x60c180]
mov dword [esp + 8], eax
call fcn.00408a40
nop
call fcn.0045d530
jmp fcn.005bd1f0