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

Disassembly:
sub esp, 0x6c
push ebx
mov ebx, dword [esp + 0x74]
or ecx, 0xffffffff
xor eax, eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x20], ecx
mov ecx, dword [ebx + 0x18]
push ebp
push esi
cmp ecx, eax
push edi
mov dword [esp + 0x14], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x30], eax
jne 0x648a11
mov eax, dword [0xc29de4]
test eax, eax
jne 0x648a11
mov eax, dword [ebx]
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x34], eax
mov eax, dword [ecx + 8]
test eax, eax
je 0x648a11
mov edx, ecx
push edx
push ebx
call fcn.006403e0
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x648a11
xor ecx, ecx
mov edx, dword [ebp]
mov cl, byte [ebp + 0x1d]
lea eax, [ecx*8]
sub eax, ecx
mov ecx, dword [esp + 0x34]
shl eax, 4
add eax, dword [ecx + 4]
mov dword [esp + 0x54], eax
mov eax, dword [eax]
push eax
push 0
push edx
push 0x12
push ebx
call fcn.0063fca0
add esp, 0x14
test eax, eax
jne 0x648a11
push eax
push 0x6a
push ebp
push ebx
call fcn.00639120
mov edx, dword [ebp + 0x18]
xor ecx, ecx
test edx, edx
push eax
push ebp
setne cl
push ebx
mov dword [esp + 0x9c], eax
mov dword [esp + 0x44], ecx
call fcn.00640440
add esp, 0x1c
test eax, eax
jne 0x648a11
mov eax, dword [esp + 0x28]
test eax, eax
je 0x647dfa
push ebp
push ebx
call fcn.0062c480
add esp, 8
test eax, eax
jne 0x648a11
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x647e1a
push esi
push ebx
call fcn.0062bb60
add esp, 8
test eax, eax
jne 0x648a11
mov esi, dword [esi + 0x20]
test esi, esi
jne 0x647e01
push ebx
call fcn.0063a4b0
mov esi, eax
add esp, 4
test esi, esi
je 0x648a11
mov al, byte [ebx + 0x13]
test al, al
jne 0x647e3d
push esi
call fcn.00629b10
add esp, 4
mov eax, dword [esp + 0x8c]
test eax, eax
jne 0x647e57
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x647e57
xor eax, eax
jmp 0x647e5c
mov eax, 1
xor edx, edx
mov dl, byte [ebp + 0x1d]
push edx
push eax
push ebx
call fcn.0062dcc0
mov eax, dword [esp + 0x8c]
add esp, 0xc
test eax, eax
je 0x647e82
mov eax, dword [ebx + 0x1c]
mov dword [esp + 0x2c], eax
inc eax
mov dword [ebx + 0x1c], eax
mov al, byte [ebp + 0x21]
test al, al
je 0x647f8d
mov edi, dword [ebx + 0x1c]
push esi
call fcn.005da9e0
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 0x20]
mov dword [esp + 0x5c], eax
inc eax
mov dword [esp + 0x34], eax
inc eax
mov dword [ebx + 0x20], eax
xor eax, eax
mov al, byte [ebp + 0x1d]
push 0
push eax
push 0x31
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx + 0x64]
mov eax, dword [edx + 0x14]
push eax
push edi
push 0xf
push esi
call fcn.00627ba0
push 2
push edi
push 0x6a
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0x58]
lea eax, [ecx + 0xd]
push eax
push edi
push 0x7e
push esi
call fcn.00627ba0
add esp, 0x44
push 0
push edi
push 2
push esi
call fcn.00627ba0
mov edx, dword [ebp]
push 0
push edx
push 0
push 0
push 0x5c
push esi
call fcn.00627c80
mov eax, dword [esp + 0x4c]
add eax, 0xc
push eax
push 0x6f01
push 0x48
push esi
call fcn.00627ba0
push 0
push edi
push 0x26
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0xa0]
add esp, 0x48
push 1
push ecx
push 0x7d
push esi
call fcn.00627ba0
push 1
push edi
push 2
push esi
call fcn.00627ba0
mov edx, dword [esp + 0x50]
push 1
push edx
push 0x7d
push esi
call fcn.00627ba0
mov eax, dword [esp + 0x54]
add eax, 0xd
push eax
push 0
push 0x62
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0x64]
add esp, 0x40
add ecx, 4
push ecx
push edi
push 0x6f
push esi
call fcn.00627ba0
push 0
push edi
push 0x1e
push esi
call fcn.00627ba0
add esp, 0x20
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x648115
push 0
push 0
push 0x62
push esi
call fcn.00627ba0
mov edi, eax
push esi
mov dword [esp + 0x4c], edi
call fcn.005da9e0
push esi
mov dword [esp + 0x54], eax
call fcn.00627cc0
mov edx, dword [esp + 0xa4]
push 0
push 0
push 0
push 0
push eax
push 0xb
push edx
push ebx
mov dword [esp + 0x78], eax
call fcn.0063a790
add esp, 0x38
test eax, eax
jne 0x648a11
mov eax, dword [ebx + 0x18]
test eax, eax
jne 0x648a11
mov eax, dword [0xc29de4]
test eax, eax
jne 0x648a11
push esi
call fcn.00627cc0
push eax
push 0
push 0x62
push esi
mov dword [esp + 0x58], eax
call fcn.00627ba0
mov eax, dword [esp + 0xa0]
add esp, 0x14
mov ecx, dword [eax]
mov edx, dword [ecx]
mov ecx, dword [esp + 0x80]
test ecx, ecx
mov dword [esp + 0x10], edx
jne 0x64804b
mov ecx, dword [ebp + 0x14]
xor edx, edx
mov dl, byte [ebp + 0x1d]
push ecx
push edx
push eax
call fcn.00648a50
add esp, 0xc
test eax, eax
je 0x648102
mov edi, dword [ebx + 0x1c]
mov ecx, dword [esp + 0x40]
push ecx
push esi
lea eax, [edi + 1]
mov dword [esp + 0x24], 1
mov dword [esp + 0x20], edi
mov dword [ebx + 0x1c], eax
call fcn.00627d10
mov edx, dword [esp + 0x18]
push 0
push edx
push 0x5d
push esi
call fcn.00627ba0
push ebp
push esi
call fcn.00647c80
push 0
push edi
push 0x19
push esi
call fcn.00627ba0
push 0
push 1
push 0x68
push esi
call fcn.00627ba0
add esp, 0x40
push 0
push edi
push 0x74
push esi
call fcn.00627ba0
push 0
push 0
push 0x18
push esi
call fcn.00627ba0
push esi
call fcn.005da9e0
push eax
mov eax, dword [esp + 0x60]
push eax
push esi
call fcn.00627e10
push 0
push edi
push 0x79
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0x50]
add esp, 0x40
push ecx
push edi
push 0x6a
push esi
call fcn.00627ba0
mov edx, dword [esp + 0x4c]
push edx
push 0
push 0x62
push esi
call fcn.00627ba0
mov eax, dword [esp + 0x64]
push eax
push esi
call fcn.00627d10
add esp, 0x28
jmp 0x648184
push esi
call fcn.005da9e0
push eax
push edi
push esi
call fcn.00627e10
add esp, 0x10
jmp 0x648184
mov ecx, 8
xor eax, eax
lea edi, [esp + 0x5c]
mov dword [esp + 0x18], 0xffffffff
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x88]
xor edi, edi
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x1c], edi
mov eax, dword [ecx]
cmp eax, edi
mov dword [esp + 0x10], eax
jle 0x648184
mov dword [esp + 0x24], edi
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x24]
mov eax, dword [edx + 8]
mov edx, dword [eax + ecx]
lea eax, [esp + 0x5c]
push edx
push eax
call fcn.0063dce0
add esp, 8
test eax, eax
jne 0x648a11
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc edi
add ecx, 0xc
cmp edi, eax
mov dword [esp + 0x24], ecx
jl 0x648149
mov ecx, dword [esp + 0x90]
test ecx, ecx
jne 0x6481bd
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x10]
cmp ecx, eax
je 0x6482e2
push ecx
mov ecx, dword [esp + 0x88]
push eax
push 0
push ecx
push 0xba9ccc
push ebx
call fcn.00622080
add esp, 0x18
jmp 0x648a11
mov edx, dword [ecx]
mov eax, dword [esp + 0x10]
cmp eax, edx
je 0x6481dc
push edx
push eax
push 0xba9cb0
push ebx
call fcn.00622080
add esp, 0x10
jmp 0x648a11
xor eax, eax
test edx, edx
jle 0x6481f3
or edx, 0xffffffff
mov edi, dword [ecx + 8]
inc eax
mov dword [edi + eax*8 - 4], edx
mov edi, dword [ecx]
cmp eax, edi
jl 0x6481e5
mov eax, dword [ecx]
mov dword [esp + 0x24], 0
test eax, eax
jle 0x6482e9
mov eax, dword [ebp + 4]
xor edi, edi
test eax, eax
jle 0x64826d
mov dword [esp + 0x38], edi
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x38]
mov ecx, dword [edx + eax]
mov edx, dword [esp + 0x90]
push ecx
mov ecx, dword [esp + 0x28]
mov eax, dword [edx + 8]
mov edx, dword [eax + ecx*8]
push edx
call fcn.00622180
add esp, 8
test eax, eax
je 0x648250
mov ecx, dword [esp + 0x38]
mov eax, dword [ebp + 4]
inc edi
add ecx, 0x14
cmp edi, eax
mov dword [esp + 0x38], ecx
jl 0x648212
jmp 0x64826d
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x24]
mov dword [ecx + eax*8 + 4], edi
mov ecx, dword [ebp + 0xc]
cmp edi, ecx
jne 0x64826d
mov dword [esp + 0x20], eax
cmp edi, dword [ebp + 4]
jl 0x648294
mov edx, dword [esp + 0x90]
mov edi, dword [esp + 0x24]
mov eax, dword [edx + 8]
mov ecx, dword [eax + edi*8]
push ecx
call fcn.0063dc90
add esp, 4
test eax, eax
je 0x6482b0
mov dword [esp + 0x20], edi
mov edx, dword [esp + 0x90]
mov eax, dword [esp + 0x24]
inc eax
mov ecx, dword [edx]
mov dword [esp + 0x24], eax
cmp eax, ecx
jl 0x648205
jmp 0x6482e9
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x84]
mov edx, dword [ecx + edi*8]
push edx
push 0
push eax
push 0xba9c90
push ebx
call fcn.00622080
mov eax, dword [ebx + 0x18]
add esp, 0x14
inc eax
mov dword [ebx + 0x18], eax
jmp 0x648a11
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x80]
test eax, eax
je 0x648313
mov edi, dword [esp + 0x2c]
push 0
push edi
push 0x7a
push esi
call fcn.00627ba0
mov edx, dword [ebp + 4]
push edx
push edi
push 0x6a
push esi
call fcn.00627ba0
add esp, 0x20
mov eax, dword [esp + 0x34]
test byte [eax + 8], 0x80
je 0x648344
mov edi, dword [ebx + 0x20]
push 0
push 0
push 0x31
lea ecx, [edi + 1]
push esi
mov dword [esp + 0x58], edi
mov dword [ebx + 0x20], ecx
call fcn.00627ba0
push 1
push edi
push 0x7d
push esi
call fcn.00627ba0
add esp, 0x20
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x648363
mov eax, dword [ebx + 0x1c]
push 9
push eax
push ebp
push ebx
mov dword [esp + 0x24], eax
call fcn.006492b0
add esp, 0x10
mov edi, dword [esp + 0x1c]
test edi, edi
je 0x648392
push esi
call fcn.00627cc0
mov edx, dword [esp + 0x1c]
push eax
push edx
push 0x7e
push esi
mov dword [esp + 0x64], eax
call fcn.00627ba0
push esi
call fcn.005da9e0
add esp, 0x18
mov dword [esp + 0x4c], eax
jmp 0x6483ba
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x6483ba
mov eax, dword [esp + 0x3c]
push eax
push 0
push 0x62
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0x50]
push ecx
push esi
call fcn.00627d10
add esp, 0x18
push esi
call fcn.00627cc0
mov dword [esp + 0x28], eax
mov al, byte [esp + 0x84]
add esp, 4
test al, 1
je 0x648559
mov eax, dword [esp + 0x20]
test eax, eax
jge 0x6483ef
push 0
push 0xffffffffffffffff
push 0x31
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x648458
test edi, edi
je 0x648406
mov edx, dword [esp + 0x18]
push eax
push edx
push 2
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x648458
mov ecx, dword [esp + 0x88]
lea eax, [eax + eax*2]
mov edx, dword [ecx + 8]
mov eax, dword [edx + eax*4]
push eax
push ebx
call fcn.0063e8a0
push esi
call fcn.005da9e0
add eax, 3
push eax
push 0xffffffffffffffff
push 0x47
push esi
call fcn.00627ba0
push 0
push 1
push 0xc
push esi
call fcn.00627ba0
push 0
push 0xffffffffffffffff
push 0x31
push esi
call fcn.00627ba0
push 0
push 0
push 0x24
push esi
call fcn.00627ba0
add esp, 0x4c
mov eax, dword [ebp + 4]
xor edi, edi
cmp eax, edi
jle 0x6484fb
mov dword [esp + 0x40], edi
mov ecx, dword [esp + 0x90]
test ecx, ecx
jne 0x648491
mov eax, edi
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6484ca
mov edx, dword [esp + 0x18]
push eax
push edx
push 2
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x6484e4
mov edx, dword [ecx]
xor eax, eax
test edx, edx
jle 0x6484b2
mov ecx, dword [esp + 0x90]
mov ecx, dword [ecx + 8]
add ecx, 4
cmp dword [ecx], edi
je 0x6484b2
inc eax
add ecx, 8
cmp eax, edx
jl 0x6484a6
cmp eax, edx
jl 0x648476
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x40]
mov ecx, dword [edx + eax + 4]
push ecx
push ebx
call fcn.0063e8a0
jmp 0x6484e1
mov ecx, dword [esp + 0x88]
lea eax, [eax + eax*2]
mov edx, dword [ecx + 8]
mov eax, dword [edx + eax*4]
push eax
push ebx
call fcn.0063f270
add esp, 8
mov ecx, dword [esp + 0x40]
mov eax, dword [ebp + 4]
inc edi
add ecx, 0x14
cmp edi, eax
mov dword [esp + 0x40], ecx
jl 0x648469
mov ecx, dword [ebp + 4]
push 0
push ecx
push 0x5d
push esi
call fcn.00627ba0
mov eax, dword [esp + 0x38]
add esp, 0x10
test eax, eax
jne 0x64851e
push ebp
push esi
call fcn.00647c80
add esp, 8
mov edi, dword [esp + 0x2c]
push 0
push edi
push 0x74
push esi
call fcn.00627ba0
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0xa4]
push edx
push eax
push 0xffffffffffffffff
push edi
push ebp
push 1
push 0
push 0x6a
push ebx
call fcn.006391f0
add esp, 0x34
test eax, eax
jne 0x648a11
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x80]
test eax, eax
mov eax, dword [esp + 0x28]
je 0x648586
test eax, eax
jne 0x64877f
mov eax, dword [ebx + 0x1c]
push 9
push eax
push ebp
push ebx
mov dword [esp + 0x24], eax
call fcn.006492b0
add esp, 0x10
jmp 0x64858e
test eax, eax
jne 0x64877f
mov eax, dword [esp + 0x20]
test eax, eax
jl 0x648630
test edi, edi
je 0x6485b1
mov ecx, dword [esp + 0x18]
push eax
push ecx
push 2
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x6485ed
mov ecx, dword [esp + 0x8c]
test ecx, ecx
je 0x6485d3
mov edx, dword [esp + 0x10]
push 1
sub edx, eax
dec edx
push edx
push 0x61
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x6485ed
mov ecx, dword [esp + 0x88]
lea eax, [eax + eax*2]
mov edx, dword [ecx + 8]
mov eax, dword [edx + eax*4]
push eax
push ebx
call fcn.0063e8a0
add esp, 8
push esi
call fcn.005da9e0
add eax, 3
push eax
push 0xffffffffffffffff
push 0x47
push esi
call fcn.00627ba0
push 0
push 1
push 0xc
push esi
call fcn.00627ba0
mov edi, dword [esp + 0x54]
mov ecx, dword [esp + 0x38]
push edi
push ecx
push 0x19
push esi
call fcn.00627ba0
push 0
push 0
push 0x24
push esi
call fcn.00627ba0
add esp, 0x44
jmp 0x648645
mov edi, dword [esp + 0x30]
mov edx, dword [esp + 0x14]
push edi
push edx
push 0x19
push esi
call fcn.00627ba0
add esp, 0x10
mov al, byte [ebp + 0x21]
test al, al
je 0x64865a
push 0
push edi
push 0x2b
push esi
call fcn.00627ba0
add esp, 0x10
mov eax, dword [ebp + 4]
xor edi, edi
test eax, eax
jle 0x64872d
mov dword [esp + 0x40], edi
cmp edi, dword [ebp + 0xc]
jne 0x648684
push 0
push 0
push 0x7b
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x648716
mov ecx, dword [esp + 0x90]
test ecx, ecx
jne 0x6486ac
mov eax, edi
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6486d7
push eax
mov eax, dword [esp + 0x1c]
push eax
push 2
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x648716
mov edx, dword [ecx]
xor eax, eax
test edx, edx
jle 0x6486c6
mov ecx, dword [ecx + 8]
add ecx, 4
cmp dword [ecx], edi
je 0x6486c6
inc eax
add ecx, 8
cmp eax, edx
jl 0x6486ba
cmp eax, edx
jl 0x648691
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x40]
mov edx, dword [eax + ecx + 4]
jmp 0x64870c
mov ecx, dword [esp + 0x8c]
test ecx, ecx
je 0x6486fc
mov edx, dword [esp + 0x10]
mov ecx, edi
sub ecx, eax
push 1
add ecx, edx
push ecx
push 0x61
push esi
call fcn.00627ba0
add esp, 0x10
jmp 0x648716
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + edx*4]
push edx
push ebx
call fcn.0063e8a0
add esp, 8
mov ecx, dword [esp + 0x40]
mov eax, dword [ebp + 4]
inc edi
add ecx, 0x14
cmp edi, eax
mov dword [esp + 0x40], ecx
jl 0x64866b
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x94]
mov edi, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x24]
xor edx, edx
test eax, eax
push ecx
push 0
setge dl
push edx
push 0
push edi
push ebp
push ebx
call fcn.00648ac0
mov al, byte [esp + 0xa0]
add esp, 0x20
test al, 2
je 0x64876a
mov eax, dword [esp + 0x2c]
jmp 0x64876d
or eax, 0xffffffff
push eax
push 0
push 0
push 0
push edi
push ebp
push ebx
call fcn.006491c0
add esp, 0x1c
mov eax, dword [esp + 0x34]
test byte [eax + 8], 0x80
je 0x64879b
mov ecx, dword [esp + 0x48]
push 0
push ecx
push 0x2e
push esi
call fcn.00627ba0
add esp, 0x10
mov eax, dword [esp + 0x80]
test eax, eax
je 0x64881e
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x6487f2
mov edx, dword [esp + 0x14]
push 0
push edx
push 0x1e
push esi
call fcn.00627ba0
mov edi, dword [ebp + 0x10]
add esp, 0x10
test edi, edi
je 0x6487f2
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x40]
push 0
push ecx
push 0x1e
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0x50]
mov edi, dword [edi + 0x20]
add esp, 0x10
inc ecx
test edi, edi
mov dword [esp + 0x40], ecx
jne 0x6487d0
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x2c]
push edx
push eax
push 0xffffffffffffffff
push ecx
push ebp
push 2
push 0
push 0x6a
push ebx
call fcn.006391f0
add esp, 0x24
test eax, eax
jne 0x648a11
mov edx, dword [esp + 0x24]
push edx
push esi
call fcn.00627d10
mov eax, dword [esp + 0x24]
add esp, 8
test eax, eax
je 0x64885e
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x18]
push eax
push edi
push 0x6f
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0x60]
push ecx
push esi
call fcn.00627d10
push 0
push edi
push 0x1e
push esi
call fcn.00627ba0
jmp 0x64888f
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x648892
mov edx, dword [esp + 0x10]
push 0
push edx
push 0xc
push esi
call fcn.00627ba0
push 0
push 0
push 0x18
push esi
call fcn.00627ba0
mov eax, dword [esp + 0x64]
push eax
push esi
call fcn.00627d10
add esp, 0x28
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x6488ed
mov ecx, dword [esp + 0x14]
push 0
push ecx
push 0x1e
push esi
call fcn.00627ba0
mov edi, dword [ebp + 0x10]
add esp, 0x10
test edi, edi
je 0x6488ed
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x94], edx
mov eax, dword [esp + 0x94]
push 0
push eax
push 0x1e
push esi
call fcn.00627ba0
mov ecx, dword [esp + 0xa4]
mov edi, dword [edi + 0x20]
add esp, 0x10
inc ecx
test edi, edi
mov dword [esp + 0x94], ecx
jne 0x6488c2
mov al, byte [ebp + 0x21]
test al, al
je 0x6489c1
mov edi, dword [ebx + 0x1c]
push esi
call fcn.005da9e0
xor ecx, ecx
push 0
mov cl, byte [ebp + 0x1d]
mov dword [esp + 0x9c], eax
push ecx
push 0x31
push esi
call fcn.00627ba0
mov edx, dword [esp + 0x68]
mov eax, dword [edx + 0x64]
mov ecx, dword [eax + 0x14]
push ecx
push edi
push 9
push esi
call fcn.00627ba0
push 2
push edi
push 0x6a
push esi
call fcn.00627ba0
mov edx, dword [esp + 0x8c]
push 0
push edx
push 1
push esi
call fcn.00627ba0
mov eax, dword [esp + 0xd8]
add esp, 0x44
add eax, 7
push eax
push 0xffffffffffffffff
push 0x47
push esi
call fcn.00627ba0
push 0
push 1
push 0xc
push esi
call fcn.00627ba0
push 0
push edi
push 0x19
push esi
call fcn.00627ba0
mov ecx, dword [ebp]
push 0
push ecx
push 0
push 0
push 0x5c
push esi
call fcn.00627c80
mov edx, dword [esp + 0x78]
add esp, 0x48
push 0
push edx
push 1
push esi
call fcn.00627ba0
push 0
push 2
push 0x5d
push esi
call fcn.00627ba0
push 0
push edi
push 0x74
push esi
call fcn.00627ba0
push 0
push edi
push 0x1e
push esi
call fcn.00627ba0
add esp, 0x40
mov eax, dword [esp + 0x34]
test byte [eax + 8], 0x80
je 0x648a11
mov al, byte [ebx + 0x13]
test al, al
jne 0x648a11
mov eax, dword [ebx + 0xa0]
test eax, eax
jne 0x648a11
mov ecx, dword [esp + 0x48]
push 0
push ecx
push 1
push esi
call fcn.00627ba0
push 0
push 1
push 0x3b
push esi
call fcn.00627ba0
push 1
push esi
call fcn.006288c0
push 0xfffffffffffffffe
push 0xba9c80
push 0
push esi
call fcn.00628910
add esp, 0x38
mov edx, dword [esp + 0x84]
push edx
call fcn.0062d9d0
mov eax, dword [esp + 0x8c]
push eax
call fcn.0063d9b0
mov ecx, dword [esp + 0x94]
push ecx
call fcn.006398c0
mov edx, dword [esp + 0x9c]
push edx
call fcn.0062d800
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret