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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x58]
cmp eax, dword [ecx + 8]
jbe 0x62243a
sub esp, 0xd8
lea eax, [0x6c6e20]
mov dword [esp], eax
mov ecx, dword [esp + 0xdc]
mov dword [esp + 4], ecx
lea edx, [0x6d3f51]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0xa
call fcn.00410280
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 4]
test eax, eax
je 0x62184f
mov dword [esp + 0x4c], eax
lea ecx, [0x6a60a0]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], eax
call fcn.0044b070
mov eax, dword [esp + 0xc]
mov dword [esp + 0x84], eax
lea ecx, [0x6c6e20]
mov dword [esp], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 4], ecx
lea ecx, [0x6d3f51]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0xa
call fcn.00410280
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x80], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x58], eax
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x4c]
xor ebp, ebp
xor esi, esi
jmp 0x621898
lea eax, [0x8f4fa0]
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
add esp, 0xd8
ret
mov edi, dword [esp + 0x54]
lea esi, [edi + 1]
mov edi, dword [esp + 0x58]
mov ebx, dword [esp + 0x80]
mov ebx, eax
mov ebp, ecx
mov eax, edi
mov ecx, dword [esp + 0x80]
cmp esi, eax
jge 0x6219a3
lea edi, [ecx + esi*8]
mov ecx, dword [edi]
mov dword [esp + 0x6c], ecx
mov edi, dword [edi + 4]
mov dword [esp + 0x3c], edi
nop
jmp 0x6219d6
mov eax, dword [esp + 0x58]
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x70], edx
mov dword [esp + 0x54], esi
jmp 0x6219ff
nop
mov dword [esp], ecx
mov dword [esp + 4], edi
lea eax, [0x739fb0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0xffffffff
call fcn.00479ad0
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
cmp eax, 1
jne 0x621923
mov edx, dword [edi + 4]
test edx, edx
jne 0x621923
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x70]
jmp 0x621879
test eax, eax
jbe 0x622430
mov ecx, dword [edi]
mov edx, dword [edi + 4]
jmp 0x621a34
mov dword [esp + 0x2c], eax
mov dword [esp + 0x5c], edi
mov dword [edi + 4], edx
mov ebx, dword [0x8f52e0]
test ebx, ebx
jne 0x62194e
mov dword [edi], ecx
jmp 0x621955
mov eax, ecx
call fcn.004642e0
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x6d2518]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
call fcn.0047be00
movzx eax, byte [esp + 0x20]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
test al, al
je 0x621992
nop
jmp 0x621a87
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x70]
jmp 0x621879
mov dword [esp + 0xe0], edx
mov dword [esp + 0xe4], ebp
mov dword [esp + 0xe8], ebx
add esp, 0xd8
ret
dec edi
mov eax, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, 1
add ecx, edi
mov edi, eax
mov eax, dword [esp + 0x58]
test edi, edi
je 0x6218ba
movzx eax, byte [ecx]
cmp al, 0x20
je 0x6219bf
cmp al, 9
je 0x6219bf
cmp al, 0xa
je 0x6219bf
cmp al, 0xd
je 0x6219bf
jmp 0x6218b6
dec edi
mov eax, dword [esp + 0x58]
test edi, edi
je 0x6218cf
movzx eax, byte [ecx + edi - 1]
cmp al, 0x20
je 0x6219fa
cmp al, 9
je 0x6219fa
cmp al, 0xa
je 0x6219fa
cmp al, 0xd
je 0x6219fa
jmp 0x6218cf
dec edx
mov ebx, edx
neg edx
sar edx, 0x1f
and edx, 1
add ecx, edx
mov edx, ebx
test edx, edx
je 0x621a52
movzx ebx, byte [ecx]
cmp bl, 0x20
je 0x621a25
cmp bl, 9
je 0x621a25
cmp bl, 0xa
je 0x621a25
cmp bl, 0xd
je 0x621a25
jmp 0x621a52
dec edx
test edx, edx
je 0x621935
movzx ebx, byte [ecx + edx - 1]
cmp bl, 0x20
je 0x621a51
cmp bl, 9
je 0x621a51
cmp bl, 0xa
je 0x621a51
cmp bl, 0xd
je 0x621a51
jmp 0x621935
dec edx
mov esi, edx
neg edx
sar edx, 0x1f
and edx, 1
add ecx, edx
mov edx, esi
test edx, edx
je 0x621aad
movzx esi, byte [ecx]
xchg esi, eax
cmp al, 0x20
xchg esi, eax
je 0x621a78
xchg esi, eax
cmp al, 9
xchg esi, eax
je 0x621a78
xchg esi, eax
cmp al, 0xa
xchg esi, eax
je 0x621a78
xchg esi, eax
cmp al, 0xd
xchg esi, eax
je 0x621a78
jmp 0x621aad
dec edx
test edx, edx
je 0x621ad4
movzx esi, byte [ecx + edx - 1]
xchg esi, eax
cmp al, 0x20
xchg esi, eax
je 0x621aac
xchg esi, eax
cmp al, 9
xchg esi, eax
je 0x621aac
xchg esi, eax
cmp al, 0xa
xchg esi, eax
je 0x621aac
xchg esi, eax
cmp al, 0xd
xchg esi, eax
je 0x621aac
test edx, edx
mov dword [esp + 0x38], edx
mov dword [esp + 0x68], ecx
jne 0x621ae2
xor eax, eax
jmp 0x621b19
mov dword [esp + 0x30], ebp
mov dword [esp + 0x60], ebx
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x6ee5d4]
mov dword [esp + 8], eax
call fcn.0047aca0
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x30]
test al, al
je 0x621b53
cmp ebp, 1
jle 0x621b4d
cmp byte [ebx], 0x22
jne 0x621b49
lea esi, [ebp + ebx - 1]
cmp byte [esi], 0x22
jne 0x621b45
add ebp, 0xfffffffe
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 1
add ebx, ebp
jmp 0x621b4f
mov esi, ebp
jmp 0x621b4f
mov esi, ebp
jmp 0x621b4f
mov esi, ebp
xor eax, eax
jmp 0x621b65
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x70]
jmp 0x621879
inc eax
cmp eax, esi
jge 0x621baa
jae 0x622429
movzx ebp, byte [eax + ebx]
lea edi, [ebp - 0x20]
xchg edi, eax
cmp al, 0x5f
xchg edi, eax
jae 0x621b9e
xchg ebp, eax
cmp al, 0x22
xchg ebp, eax
je 0x621b9a
xchg ebp, eax
cmp al, 0x3b
xchg ebp, eax
je 0x621b96
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
jne 0x621b64
cmp eax, esi
jmp 0x621ba0
cmp eax, esi
jmp 0x621ba0
cmp eax, esi
jmp 0x621ba0
cmp eax, esi
mov ebx, 0
mov esi, 0
jge 0x621bbd
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x70]
jmp 0x621879
mov dword [esp + 0x50], esi
mov dword [esp + 0x7c], ebx
lea eax, [0x6c2e80]
mov dword [esp], eax
call fcn.0040bd30
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x38]
mov dword [eax + 4], ecx
mov ecx, dword [0x8f52e0]
test ecx, ecx
jne 0x621bf0
mov edx, dword [esp + 0x68]
mov dword [eax], edx
jmp 0x621bfd
mov edi, eax
mov eax, dword [esp + 0x68]
call fcn.004642e0
mov eax, edi
mov edx, dword [esp + 0x50]
mov dword [eax + 0xc], edx
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x621c17
mov edx, dword [esp + 0x7c]
mov dword [eax + 8], edx
jmp 0x621c27
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x7c]
call fcn.004642e0
mov eax, ecx
mov edx, dword [esp + 0x3c]
mov dword [eax + 0x4c], edx
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x621c41
mov edx, dword [esp + 0x6c]
mov dword [eax + 0x48], edx
jmp 0x621c51
lea edi, [eax + 0x48]
mov ecx, eax
mov eax, dword [esp + 0x6c]
call fcn.004642e0
mov eax, ecx
mov dword [esp + 0x74], eax
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x2c]
mov ebx, 1
jmp 0x621c69
inc ebx
mov edx, dword [esp + 0x5c]
cmp ebx, ecx
jge 0x621d31
jae 0x622422
lea edi, [edx + ebx*8]
mov ebp, dword [edi]
mov esi, dword [edi + 4]
jmp 0x621db9
mov edx, dword [esp + 0x5c]
jmp 0x621ddf
mov edx, dword [esp + 0x5c]
lea edx, [edx + ebx*8 + 4]
mov dword [edx], esi
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x621ca7
mov dword [edi], ebp
test esi, esi
jmp 0x621cb4
mov edx, eax
mov eax, ebp
call fcn.004642e0
test esi, esi
mov eax, edx
je 0x621c64
mov dword [esp + 0x78], edi
mov dword [esp + 0x40], ebx
mov dword [esp], ebp
mov dword [esp + 4], esi
lea eax, [0x6d2518]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
call fcn.0047be00
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x34], edx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x64], ebx
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.005ffc10
movzx eax, byte [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test al, al
je 0x621d20
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x34]
xor eax, eax
jmp 0x621e08
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
mov ecx, dword [esp + 0x48]
inc ecx
mov edx, dword [esp + 0x4c]
cmp edx, ecx
jb 0x621d44
mov ebx, dword [esp + 0x70]
jmp 0x621d80
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6a60a0]
mov dword [esp + 0x10], eax
call fcn.0044b130
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov ebp, ebx
mov ebx, edx
mov edx, ebp
mov ebp, dword [0x8f52e0]
lea edi, [ebx + ecx*4 - 4]
test ebp, ebp
jne 0x621d94
mov dword [ebx + ecx*4 - 4], eax
jmp 0x621d99
call fcn.004642e0
mov eax, edx
mov edx, ebx
jmp 0x621879
dec esi
mov edx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 1
add ebp, esi
mov esi, edx
mov edx, dword [esp + 0x5c]
test esi, esi
je 0x621ddf
movzx edx, byte [ebp]
cmp dl, 0x20
je 0x621da2
cmp dl, 9
je 0x621da2
cmp dl, 0xa
je 0x621da2
cmp dl, 0xd
je 0x621da2
jmp 0x621c84
dec esi
mov edx, dword [esp + 0x5c]
test esi, esi
je 0x621c91
movzx edx, byte [ebp + esi - 1]
cmp dl, 0x20
je 0x621dda
cmp dl, 9
je 0x621dda
cmp dl, 0xa
je 0x621dda
cmp dl, 0xd
je 0x621dda
jmp 0x621c8d
inc eax
mov edx, edi
cmp eax, ebp
jge 0x621e4f
jae 0x62241b
movzx esi, byte [eax + ebx]
mov edi, edx
lea edx, [esi - 0x20]
cmp dl, 0x5f
jae 0x621e41
xchg esi, eax
cmp al, 0x22
xchg esi, eax
je 0x621e3d
xchg esi, eax
cmp al, 0x3b
xchg esi, eax
je 0x621e39
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
jne 0x621e05
cmp eax, ebp
jmp 0x621e43
cmp eax, ebp
jmp 0x621e43
cmp eax, ebp
jmp 0x621e43
cmp eax, ebp
mov ebx, 0
mov ebp, 0
jmp 0x621e51
mov edi, edx
jge 0x621f09
mov eax, dword [esp + 0x74]
mov edx, dword [eax + 0x50]
mov ebx, dword [eax + 0x58]
mov ebp, dword [eax + 0x54]
inc ebp
mov esi, dword [esp + 0x78]
mov ecx, edx
mov edx, dword [esi]
mov esi, dword [esi + 4]
cmp ebx, ebp
jae 0x621ed6
mov dword [esp + 0x50], esi
mov dword [esp + 0x7c], edx
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x698ba0]
mov dword [esp + 0x10], eax
call fcn.0044b130
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0x58], edx
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x621ec0
mov dword [ebx + 0x50], eax
jmp 0x621ec8
lea edi, [ebx + 0x50]
call fcn.004642e0
mov edx, dword [esp + 0x7c]
mov esi, dword [esp + 0x50]
mov ebp, ecx
mov ecx, eax
mov eax, ebx
mov dword [eax + 0x54], ebp
lea ebx, [ecx + ebp*8 - 4]
mov dword [ebx], esi
lea edi, [ecx + ebp*8 - 8]
mov ebx, dword [0x8f52e0]
test ebx, ebx
jne 0x621ef1
mov dword [edi], edx
jmp 0x621efc
mov ecx, eax
mov eax, edx
call fcn.004642e0
mov eax, ecx
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
cmp ecx, 6
jg 0x621fcb
cmp ecx, 4
jne 0x621f54
cmp dword [edi], 0x68746170
jne 0x622360
mov eax, dword [esp + 0x74]
mov dword [eax + 0x14], ebp
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x621f39
mov dword [eax + 0x10], ebx
jmp 0x621f47
lea edi, [eax + 0x10]
mov ecx, eax
mov eax, ebx
call fcn.004642e0
mov eax, ecx
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
cmp ecx, 6
jne 0x622360
cmp dword [edi], 0x616d6f64
jne 0x621f9e
cmp word [edi + 4], 0x6e69
jne 0x621f9e
mov eax, dword [esp + 0x74]
mov dword [eax + 0x1c], ebp
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x621f83
mov dword [eax + 0x18], ebx
jmp 0x621f91
lea edi, [eax + 0x18]
mov ecx, eax
mov eax, ebx
call fcn.004642e0
mov eax, ecx
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
cmp dword [edi], 0x75636573
jne 0x622360
cmp word [edi + 4], 0x6572
jne 0x622360
mov eax, dword [esp + 0x74]
mov byte [eax + 0x40], 1
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
cmp ecx, 7
jne 0x622270
mov dword [esp + 0x34], ebp
mov dword [esp + 0x64], ebx
cmp dword [edi], 0x69707865
jne 0x6221f6
cmp word [edi + 4], 0x6572
jne 0x6221f6
cmp byte [edi + 6], 0x73
jne 0x6221f6
mov ecx, dword [esp + 0x74]
mov dword [ecx + 0x38], ebp
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x622014
mov dword [ecx + 0x34], ebx
jmp 0x62201e
lea edi, [ecx + 0x34]
mov eax, ebx
call fcn.004642e0
lea edi, [esp + 0xc4]
xor eax, eax
call fcn.0046457b
lea ecx, [0x6dc49b]
mov dword [esp], ecx
mov dword [esp + 4], 0x1d
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
call fcn.0050cca0
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x44], ecx
lea edi, [esp + 0xc4]
lea esi, [esp + 0x10]
call fcn.00464a5e
lea edi, [esp + 0xb0]
lea esi, [esp + 0xc4]
call fcn.00464a5e
mov ecx, dword [esp + 0x44]
test ecx, ecx
je 0x62211c
lea edi, [esp + 0xc4]
xor eax, eax
call fcn.0046457b
lea ecx, [0x6dc4b8]
mov dword [esp], ecx
mov dword [esp + 4], 0x1d
mov edx, dword [esp + 0x64]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0xc], edx
call fcn.0050cca0
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x44], ecx
lea edi, [esp + 0xc4]
lea esi, [esp + 0x10]
call fcn.00464a5e
lea edi, [esp + 0xb0]
lea esi, [esp + 0xc4]
call fcn.00464a5e
mov ecx, dword [esp + 0x44]
test ecx, ecx
je 0x62211c
mov ecx, dword [esp + 0x74]
lea edi, [ecx + 0x20]
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x622105
xor eax, eax
call fcn.0046457b
jmp 0x622360
lea eax, [0x6d0180]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00411570
jmp 0x622360
lea edi, [esp + 0x9c]
lea esi, [esp + 0xb0]
call fcn.00464a5e
nop
nop
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
test edx, 0x80000000
je 0x62218b
shl edx, 1
mov ebx, ecx
shr ecx, 0x1f
or ecx, edx
shl ebx, 1
mov edx, ecx
shl ecx, 1
shr ebx, 0x1f
or ebx, ecx
shr edx, 0x1f
add ebx, 0xd7b17f80
adc edx, 0xd
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], edx
and dword [esp + 0x9c], 0x3fffffff
mov dword [esp + 0xa0], 0
mov dword [esp + 0xac], 0
lea edi, [esp + 0x88]
lea esi, [esp + 0x9c]
call fcn.00464a5e
mov eax, dword [esp + 0x74]
lea edi, [eax + 0x20]
mov ecx, dword [0x8f52e0]
test ecx, ecx
jne 0x6221c8
lea esi, [esp + 0x88]
call fcn.00464a5e
jmp 0x6221e9
lea eax, [0x6d0180]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x88]
mov dword [esp + 8], eax
call fcn.00411390
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
cmp dword [edi], 0x2d78616d
jne 0x622360
cmp word [edi + 4], 0x6761
jne 0x622360
cmp byte [edi + 6], 0x65
jne 0x622360
mov dword [esp], ebx
mov dword [esp + 4], ebp
call fcn.00483690
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
test ecx, ecx
jne 0x622360
test eax, eax
je 0x622255
mov edx, dword [esp + 0x34]
test edx, edx
jbe 0x622412
mov edx, dword [esp + 0x64]
cmp byte [edx], 0x30
je 0x622360
test eax, eax
jg 0x62225a
mov eax, 0xffffffff
mov edx, dword [esp + 0x74]
mov dword [edx + 0x3c], eax
mov eax, edx
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
cmp ecx, 8
jne 0x622360
cmp dword [edi], 0x70747468
jne 0x62229f
cmp dword [edi + 4], 0x796c6e6f
jne 0x62229f
mov eax, dword [esp + 0x74]
mov byte [eax + 0x41], 1
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
cmp dword [edi], 0x656d6173
jne 0x622360
cmp dword [edi + 4], 0x65746973
jne 0x622360
mov dword [esp], ebx
mov dword [esp + 4], ebp
call fcn.005ffc10
movzx eax, byte [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test al, al
je 0x622348
cmp ecx, 3
jne 0x6222f4
cmp word [edx], 0x616c
jne 0x622330
cmp byte [edx + 2], 0x78
jne 0x622330
mov eax, dword [esp + 0x74]
mov dword [eax + 0x44], 2
jmp 0x62233b
cmp ecx, 4
jne 0x62230e
cmp dword [edx], 0x656e6f6e
jne 0x622330
mov eax, dword [esp + 0x74]
mov dword [eax + 0x44], 4
jmp 0x62233b
cmp ecx, 6
jne 0x622330
cmp dword [edx], 0x69727473
jne 0x622330
cmp word [edx + 4], 0x7463
jne 0x622330
mov eax, dword [esp + 0x74]
mov dword [eax + 0x44], 3
jmp 0x62233b
mov eax, dword [esp + 0x74]
mov dword [eax + 0x44], 1
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
mov eax, dword [esp + 0x74]
mov dword [eax + 0x44], 1
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
mov eax, dword [esp + 0x74]
mov edx, dword [eax + 0x50]
mov ebx, dword [eax + 0x58]
mov ebp, dword [eax + 0x54]
inc ebp
mov esi, dword [esp + 0x78]
mov ecx, edx
mov edx, dword [esi]
mov esi, dword [esi + 4]
cmp ebx, ebp
jae 0x6223df
mov dword [esp + 0x50], esi
mov dword [esp + 0x7c], edx
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x698ba0]
mov dword [esp + 0x10], eax
call fcn.0044b130
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0x58], edx
mov edx, dword [0x8f52e0]
test edx, edx
jne 0x6223c9
mov dword [ebx + 0x50], eax
jmp 0x6223d1
lea edi, [ebx + 0x50]
call fcn.004642e0
mov edx, dword [esp + 0x7c]
mov esi, dword [esp + 0x50]
mov ebp, ecx
mov ecx, eax
mov eax, ebx
mov dword [eax + 0x54], ebp
lea ebx, [ecx + ebp*8 - 4]
mov dword [ebx], esi
lea edi, [ecx + ebp*8 - 8]
mov ebx, dword [0x8f52e0]
test ebx, ebx
jne 0x6223fa
mov dword [edi], edx
jmp 0x622405
mov ecx, eax
mov eax, edx
call fcn.004642e0
mov eax, ecx
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x40]
jmp 0x621c64
xor eax, eax
mov ecx, eax
call fcn.00464360
mov ecx, ebp
call fcn.00464360
mov eax, ebx
call fcn.00464360
mov ecx, esi
call fcn.00464360
xor eax, eax
mov ecx, eax
call fcn.00464360
nop
call fcn.00462ed0
jmp fcn.00621780