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

Disassembly:
sub esp, 0x68
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov dword [esp + 0x20], ebp
mov eax, dword [ebp + 0x88]
mov ecx, dword [eax + 0xc4]
mov dword [eax + 0xc4], 1
mov eax, dword [ebp + 0x1b0]
mov dword [esp + 0x3c], ecx
test eax, eax
jne 0x467ecb
mov eax, dword [ebp + 0x1b4]
test eax, eax
je 0x467ed6
push 0
push 1
mov ecx, ebp
call fcn.00471380
mov edx, dword [0x55f7bc]
mov dword [0x55f7bc], 0
mov eax, dword [ebp + 0x88]
mov ebx, dword [ebp + 0x54]
mov ecx, 6
lea edi, [esp + 0x60]
lea esi, [eax + 0x160]
mov dword [esp + 0x40], edx
mov edx, dword [ebp + 0x58]
mov dword [esp + 0x4c], ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x38], edx
test ecx, ecx
je 0x467f2e
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x60]
push 0
push 0
push eax
push ecx
mov ecx, ebp
call fcn.00464180
jmp 0x467f79
mov ecx, dword [eax + 0x284]
dec ecx
cmp edx, ecx
jge 0x467f3b
mov ecx, edx
mov edx, ecx
mov dword [ebp + 0x58], ecx
mov eax, dword [eax + 0x2d8]
shl edx, 5
mov eax, dword [eax + edx]
mov edx, ebx
dec eax
cmp ebx, eax
jl 0x467f55
mov edx, eax
test edx, edx
jge 0x467f5d
xor eax, eax
jmp 0x467f63
cmp ebx, eax
jge 0x467f63
mov eax, ebx
mov edx, dword [esp + 0x38]
mov dword [ebp + 0x54], eax
cmp edx, ecx
jne 0x467f72
cmp ebx, eax
je 0x467f79
mov ecx, ebp
call fcn.00463d80
push 1
mov ecx, ebp
call fcn.00467d40
test eax, eax
je 0x467fa9
mov ecx, dword [ebp + 0x88]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
pop edi
pop esi
mov dword [ecx + 0xc4], edx
pop ebp
mov dword [0x55f7bc], eax
pop ebx
add esp, 0x68
ret 0xc
mov eax, dword [ebp + 0x88]
mov ecx, 6
lea edi, [esp + 0x60]
lea esi, [eax + 0x160]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
push ecx
push edx
lea ecx, [esp + 0x18]
lea edx, [esp + 0x20]
push ecx
push edx
mov ecx, eax
call fcn.00453e10
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
test ebx, ebx
jle 0x4680a6
test edi, edi
jne 0x4680a6
mov eax, dword [ebp + 0x88]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x468023
mov edx, dword [eax + 0x2a0]
lea ecx, [ebx + ebx*2]
lea ecx, [edx + ecx*4]
mov edx, ecx
mov ecx, dword [edx]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
jmp 0x468048
mov ecx, dword [eax + 0x74]
test ecx, ecx
je 0x4680a6
mov edx, dword [eax + 0x150]
lea ecx, [ebx + ebx*2]
lea ecx, [edx + ecx*4]
mov edx, ecx
mov ecx, dword [edx]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
xor edx, edx
test ecx, ecx
setg dl
mov ecx, edx
test ecx, ecx
je 0x4680a2
dec ebx
mov dword [esp + 0x18], ebx
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x46806f
mov edx, dword [eax + 0x2a0]
lea ecx, [ebx + ebx*2]
jmp 0x46809a
mov ecx, dword [eax + 0x74]
test ecx, ecx
jne 0x468091
mov ecx, dword [eax + 0x80]
test ecx, ecx
jne 0x468091
mov edx, dword [eax + 0x2d8]
mov ecx, ebx
shl ecx, 5
mov eax, dword [edx + ecx]
dec eax
jmp 0x46809e
mov edx, dword [eax + 0x150]
lea ecx, [ebx + ebx*2]
mov eax, dword [edx + ecx*4 + 8]
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0x10]
mov eax, dword [ebp + 0x118]
mov edx, dword [ebp + 0x60]
mov dword [esp + 0x58], eax
mov eax, ebx
sub eax, edx
mov ecx, dword [ebp + 0x11c]
imul eax, dword [0x536200]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x88]
mov dword [esp + 0x5c], ecx
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x46810c
mov ecx, dword [eax + 0x2a0]
lea edx, [ebx + ebx*2]
lea edx, [ecx + edx*4]
mov esi, edx
mov ecx, dword [esi]
shl ecx, 5
mov edx, dword [esi + 4]
mov esi, dword [esi + 8]
mov dword [esp + 0x34], esi
mov esi, dword [eax + 0x2d8]
mov ecx, dword [esi + ecx + 8]
lea edx, [ecx + edx*2]
mov dword [esp + 0x7c], edx
jmp 0x468181
mov ecx, dword [eax + 0x74]
test ecx, ecx
jne 0x468132
mov ecx, dword [eax + 0x80]
test ecx, ecx
jne 0x468132
mov edx, dword [eax + 0x2d8]
mov ecx, ebx
shl ecx, 5
mov ebp, dword [edx + ecx + 8]
mov dword [esp + 0x7c], ebp
jmp 0x468185
mov edx, dword [eax + 0x150]
lea ecx, [ebx + ebx*2]
lea ecx, [edx + ecx*4]
mov edx, ecx
mov ecx, dword [edx]
mov edi, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
mov edx, dword [eax + 0x284]
dec edx
cmp edx, ecx
mov esi, edx
jl 0x46815b
mov esi, ecx
test esi, esi
jge 0x468163
xor ecx, ecx
jmp 0x468169
cmp edx, ecx
jge 0x468169
mov ecx, edx
mov edx, dword [eax + 0x2d8]
shl ecx, 5
mov ecx, dword [edx + ecx + 8]
lea edx, [ecx + edi*2]
mov edi, dword [esp + 0x10]
mov dword [esp + 0x7c], edx
mov ebp, dword [esp + 0x7c]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x46819a
mov edx, dword [eax + 0x2a0]
lea ecx, [ebx + ebx*2]
jmp 0x4681c3
mov ecx, dword [eax + 0x74]
test ecx, ecx
jne 0x4681ba
mov ecx, dword [eax + 0x80]
test ecx, ecx
jne 0x4681ba
mov edx, dword [eax + 0x2d8]
shl ebx, 5
mov ecx, dword [edx + ebx]
dec ecx
jmp 0x4681c7
mov edx, dword [eax + 0x150]
lea ecx, [ebx + ebx*2]
mov ecx, dword [edx + ecx*4 + 8]
test edi, edi
mov dword [esp + 0x1c], ecx
jle 0x468b02
mov ecx, dword [eax + 0xe8]
lea edx, [ecx + ecx*4]
lea edx, [ecx + edx*8]
lea ecx, [ecx + edx*2]
shl ecx, 2
mov edx, dword [ecx + 0x531b54]
test edx, edx
jne 0x4684cf
mov edx, dword [eax + 0xb4]
test edx, edx
jne 0x4684cf
mov eax, dword [0x55f844]
test eax, eax
je 0x468403
mov eax, dword [esp + 0x84]
test eax, eax
je 0x4683b2
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x10]
mov si, word [eax + edx*2]
cmp si, 0x3a
je 0x4683b2
cmp word [eax + edx*2 + 2], 0x3a
je 0x4683b2
cmp si, 0x40
je 0x4683b2
mov ax, word [eax + edx*2 - 2]
cmp ax, 0x40
je 0x4683b2
cmp ax, 0x2e
je 0x4683b2
test si, si
je 0x4682a1
push esi
call fcn.004bfa20
add esp, 4
test eax, eax
jne 0x46829d
cmp si, 0x3c
je 0x46829d
cmp si, 0x3e
je 0x46829d
cmp si, 0x28
je 0x46829d
cmp si, 0x29
je 0x46829d
cmp si, 0x22
je 0x46829d
cmp si, 0xff
jbe 0x468403
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + 0x88]
mov esi, dword [eax + 0x98]
test esi, esi
je 0x4682c4
mov eax, dword [eax + 0x2a0]
lea ecx, [ecx + ecx*2]
jmp 0x4682ed
mov esi, dword [eax + 0x74]
test esi, esi
jne 0x4682e4
mov esi, dword [eax + 0x80]
test esi, esi
jne 0x4682e4
mov eax, dword [eax + 0x2d8]
shl ecx, 5
mov ebp, dword [eax + ecx]
dec ebp
jmp 0x4682f1
mov eax, dword [eax + 0x150]
lea ecx, [ecx + ecx*2]
mov ebp, dword [eax + ecx*4 + 8]
lea ebx, [edx + 1]
cmp ebx, ebp
jge 0x468403
mov ecx, dword [esp + 0x7c]
lea edi, [ecx + ebx*2]
test edi, edi
je 0x468396
mov ax, word [edi]
cmp ax, 0x2c
je 0x468375
cmp ax, 0x2e
je 0x468375
test ax, ax
je 0x468403
push eax
call fcn.004bfa20
add esp, 4
test eax, eax
jne 0x468403
mov ax, word [edi]
cmp ax, 0x3c
je 0x468403
cmp ax, 0x3e
je 0x468403
cmp ax, 0x28
je 0x468403
cmp ax, 0x29
je 0x468403
cmp ax, 0x22
je 0x468403
cmp ax, 0xff
ja 0x468403
jmp 0x468396
mov si, word [edi + 2]
test si, si
je 0x468403
push esi
call fcn.004bfa20
add esp, 4
test eax, eax
jne 0x468403
cmp si, 0xff
ja 0x468403
mov ax, word [edi]
cmp ax, 0x3a
je 0x4683b2
cmp ax, 0x40
je 0x4683b2
inc ebx
add edi, 2
cmp ebx, ebp
jge 0x468403
jmp 0x468303
mov eax, dword [esp + 0x10]
dec eax
test eax, eax
mov dword [esp + 0x10], eax
jle 0x468b02
mov edx, dword [esp + 0x7c]
mov si, word [edx + eax*2 - 2]
test si, si
je 0x468403
push esi
call fcn.004bfa20
add esp, 4
test eax, eax
jne 0x468403
cmp si, 0x3c
je 0x468403
cmp si, 0x3e
je 0x468403
cmp si, 0x28
je 0x468403
cmp si, 0x29
je 0x468403
cmp si, 0x22
je 0x468403
cmp si, 0xff
jbe 0x4683b2
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x468b02
mov eax, dword [0x5361d0]
test eax, eax
je 0x468b02
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x10]
mov ax, word [ecx + edx*2]
cmp ax, 0x100
jae 0x468b02
mov dword [esp + 0x84], eax
and eax, 0xffff
cmp word [eax*2 + 0x53623c], 0
lea eax, [eax*2 + 0x53623c]
jne 0x4684a0
mov edx, dword [0x5361f4]
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x88]
push 1
push ecx
push edx
call dword [0x4fd160]
mov eax, dword [0x536238]
test eax, eax
je 0x468484
mov eax, dword [0x536220]
mov ecx, dword [esp + 0x2c]
sub ecx, eax
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x84]
mov dx, word [esp + 0x2c]
and ecx, 0xffff
lea eax, [ecx*2 + 0x53623c]
mov word [eax], dx
mov edx, dword [esp + 0x7c]
mov esi, dword [esp + 0x10]
xor ecx, ecx
mov cx, word [edx + esi*2]
xor edx, edx
mov dx, word [eax]
lea ecx, [ecx + ecx*2]
cmp edx, dword [ecx*4 + 0x5355cc]
jae 0x468b02
mov eax, esi
dec eax
mov dword [esp + 0x10], eax
jmp 0x468b02
mov eax, dword [ecx + 0x531ab4]
lea ecx, [ecx + 0x531a18]
test eax, eax
mov dword [esp + 0x84], ecx
je 0x4684fd
mov eax, dword [str.Aacute_]
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*8]
lea eax, [eax + edx*2]
lea esi, [eax*4 + 0x531a18]
jmp 0x468504
mov esi, dword [esp + 0x84]
lea ebx, [edi + 1]
mov dword [esp + 0x24], ebx
mov dx, word [ebp + edi*2 - 2]
cmp dx, 0x20
je 0x46855e
cmp dx, 9
je 0x46855e
cmp dx, 0xd
je 0x46855e
cmp dx, 0xa
je 0x46855e
cmp dx, 0xff
ja 0x468553
mov ecx, dword [esi + 0x30]
test ecx, ecx
jne 0x46853b
mov ecx, 0x55f864
mov ax, word [ecx]
test ax, ax
je 0x468553
add ecx, 2
cmp dx, ax
je 0x46855e
mov ax, word [ecx]
test ax, ax
jne 0x468543
dec edi
test edi, edi
mov dword [esp + 0x10], edi
jle 0x4685b6
jmp 0x46850b
dec edi
test edi, edi
mov dword [esp + 0x10], edi
jle 0x4685b6
mov dx, word [ebp + edi*2 - 2]
cmp dx, 0x20
je 0x4685b1
cmp dx, 9
je 0x4685b1
cmp dx, 0xd
je 0x4685b1
cmp dx, 0xa
je 0x4685b1
cmp dx, 0xff
ja 0x4685b6
mov ecx, dword [esi + 0x30]
test ecx, ecx
jne 0x468597
mov ecx, 0x55f864
mov ax, word [ecx]
test ax, ax
je 0x4685b6
add ecx, 2
cmp dx, ax
je 0x4685b1
mov ax, word [ecx]
test ax, ax
jne 0x46859f
jmp 0x4685b6
dec edi
mov dword [esp + 0x10], edi
mov edx, dword [esp + 0x84]
mov ecx, ebx
xor eax, eax
sub ecx, edi
mov al, byte [edx + 0x5a]
mov dword [esp + 0x14], ecx
cmp eax, ecx
jle 0x4686c4
mov ecx, ebx
sub ecx, eax
js 0x4686c4
lea ebx, [ebp + ecx*2]
mov ebp, eax
mov eax, dword [edx + 0x3c]
test ebp, ebp
mov dword [esp + 0x2c], eax
jle 0x4686c4
mov esi, dword [esp + 0x1c]
sub esi, ecx
cmp esi, ebp
jl 0x4686c4
mov ecx, dword [edx + 0x90]
test ecx, ecx
je 0x468637
dec ebp
sub eax, ebx
mov cx, word [ebx]
mov dx, word [eax + ebx]
add ebx, 2
cmp cx, dx
jne 0x4686c4
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x46860c
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x5a]
jmp 0x468af2
dec ebp
mov si, word [ebx]
add ebx, 2
cmp si, 0x100
jae 0x468655
and esi, 0xff
mov di, word [esi*2 + 0x55f1c0]
jmp 0x46866d
mov edx, esi
and edx, 0xffff
push edx
call dword [0x4fd660]
test ax, ax
mov edi, esi
je 0x46866d
mov edi, eax
mov eax, dword [esp + 0x2c]
mov si, word [eax]
add eax, 2
cmp si, 0x100
mov dword [esp + 0x2c], eax
jae 0x468692
and esi, 0xff
mov si, word [esi*2 + 0x55f1c0]
jmp 0x4686a7
mov eax, esi
and eax, 0xffff
push eax
call dword [0x4fd660]
test ax, ax
je 0x4686a7
mov esi, eax
cmp di, si
jne 0x4686c4
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x468638
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x5a]
jmp 0x468af2
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov cl, byte [edx + 0x58]
cmp ecx, eax
jle 0x4687d5
mov eax, dword [esp + 0x24]
sub eax, ecx
js 0x4687d5
mov esi, dword [esp + 0x7c]
mov ebp, ecx
mov ecx, dword [edx + 0x34]
test ebp, ebp
lea ebx, [esi + eax*2]
mov dword [esp + 0x2c], ecx
jle 0x4687d5
mov esi, dword [esp + 0x1c]
sub esi, eax
cmp esi, ebp
jl 0x4687d5
mov eax, dword [edx + 0x90]
test eax, eax
je 0x468748
mov eax, ecx
dec ebp
sub eax, ebx
mov cx, word [ebx]
mov dx, word [eax + ebx]
add ebx, 2
cmp cx, dx
jne 0x4687d5
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x46871d
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x58]
jmp 0x468af2
dec ebp
mov si, word [ebx]
add ebx, 2
cmp si, 0x100
jae 0x468766
and esi, 0xff
mov di, word [esi*2 + 0x55f1c0]
jmp 0x46877e
mov edx, esi
and edx, 0xffff
push edx
call dword [0x4fd660]
test ax, ax
mov edi, esi
je 0x46877e
mov edi, eax
mov eax, dword [esp + 0x2c]
mov si, word [eax]
add eax, 2
cmp si, 0x100
mov dword [esp + 0x2c], eax
jae 0x4687a3
and esi, 0xff
mov si, word [esi*2 + 0x55f1c0]
jmp 0x4687b8
mov eax, esi
and eax, 0xffff
push eax
call dword [0x4fd660]
test ax, ax
je 0x4687b8
mov esi, eax
cmp di, si
jne 0x4687d5
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x468749
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x58]
jmp 0x468af2
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov cl, byte [edx + 0x5c]
cmp ecx, eax
jle 0x4688e6
mov eax, dword [esp + 0x24]
sub eax, ecx
js 0x4688e6
mov esi, dword [esp + 0x7c]
mov ebp, ecx
mov ecx, dword [edx + 0x44]
test ebp, ebp
lea ebx, [esi + eax*2]
mov dword [esp + 0x2c], ecx
jle 0x4688e6
mov esi, dword [esp + 0x1c]
sub esi, eax
cmp esi, ebp
jl 0x4688e6
mov eax, dword [edx + 0x90]
test eax, eax
je 0x468859
mov eax, ecx
dec ebp
sub eax, ebx
mov cx, word [ebx]
mov dx, word [eax + ebx]
add ebx, 2
cmp cx, dx
jne 0x4688e6
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x46882e
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x5c]
jmp 0x468af2
dec ebp
mov si, word [ebx]
add ebx, 2
cmp si, 0x100
jae 0x468877
and esi, 0xff
mov di, word [esi*2 + 0x55f1c0]
jmp 0x46888f
mov edx, esi
and edx, 0xffff
push edx
call dword [0x4fd660]
test ax, ax
mov edi, esi
je 0x46888f
mov edi, eax
mov eax, dword [esp + 0x2c]
mov si, word [eax]
add eax, 2
cmp si, 0x100
mov dword [esp + 0x2c], eax
jae 0x4688b4
and esi, 0xff
mov si, word [esi*2 + 0x55f1c0]
jmp 0x4688c9
mov eax, esi
and eax, 0xffff
push eax
call dword [0x4fd660]
test ax, ax
je 0x4688c9
mov esi, eax
cmp di, si
jne 0x4688e6
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x46885a
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x5c]
jmp 0x468af2
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov cl, byte [edx + 0x59]
cmp ecx, eax
jle 0x4689f7
mov eax, dword [esp + 0x24]
sub eax, ecx
js 0x4689f7
mov esi, dword [esp + 0x7c]
mov ebp, ecx
mov ecx, dword [edx + 0x38]
test ebp, ebp
lea ebx, [esi + eax*2]
mov dword [esp + 0x2c], ecx
jle 0x4689f7
mov esi, dword [esp + 0x1c]
sub esi, eax
cmp esi, ebp
jl 0x4689f7
mov eax, dword [edx + 0x90]
test eax, eax
je 0x46896a
mov eax, ecx
dec ebp
sub eax, ebx
mov cx, word [ebx]
mov dx, word [eax + ebx]
add ebx, 2
cmp cx, dx
jne 0x4689f7
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x46893f
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x59]
jmp 0x468af2
dec ebp
mov si, word [ebx]
add ebx, 2
cmp si, 0x100
jae 0x468988
and esi, 0xff
mov di, word [esi*2 + 0x55f1c0]
jmp 0x4689a0
mov edx, esi
and edx, 0xffff
push edx
call dword [0x4fd660]
test ax, ax
mov edi, esi
je 0x4689a0
mov edi, eax
mov eax, dword [esp + 0x2c]
mov si, word [eax]
add eax, 2
cmp si, 0x100
mov dword [esp + 0x2c], eax
jae 0x4689c5
and esi, 0xff
mov si, word [esi*2 + 0x55f1c0]
jmp 0x4689da
mov eax, esi
and eax, 0xffff
push eax
call dword [0x4fd660]
test ax, ax
je 0x4689da
mov esi, eax
cmp di, si
jne 0x4689f7
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x46896b
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x59]
jmp 0x468af2
mov esi, dword [esp + 0x84]
mov ecx, dword [esp + 0x14]
xor eax, eax
mov al, byte [esi + 0x60]
cmp eax, ecx
jle 0x468b02
mov ecx, dword [esp + 0x24]
sub ecx, eax
js 0x468b02
mov edx, dword [esp + 0x7c]
mov ebp, eax
mov eax, dword [esi + 0x54]
test ebp, ebp
lea ebx, [edx + ecx*2]
mov dword [esp + 0x2c], eax
jle 0x468b02
mov edx, dword [esp + 0x1c]
sub edx, ecx
cmp edx, ebp
jl 0x468b02
mov ecx, dword [esi + 0x90]
test ecx, ecx
je 0x468a6a
dec ebp
sub eax, ebx
mov cx, word [ebx]
mov dx, word [eax + ebx]
add ebx, 2
cmp cx, dx
jne 0x468b02
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x468a4e
jmp 0x468ae6
dec ebp
mov si, word [ebx]
add ebx, 2
cmp si, 0x100
jae 0x468a88
and esi, 0xff
mov di, word [esi*2 + 0x55f1c0]
jmp 0x468aa0
mov edx, esi
and edx, 0xffff
push edx
call dword [0x4fd660]
test ax, ax
mov edi, esi
je 0x468aa0
mov edi, eax
mov eax, dword [esp + 0x2c]
mov si, word [eax]
add eax, 2
cmp si, 0x100
mov dword [esp + 0x2c], eax
jae 0x468ac5
and esi, 0xff
mov si, word [esi*2 + 0x55f1c0]
jmp 0x468ada
mov eax, esi
and eax, 0xffff
push eax
call dword [0x4fd660]
test ax, ax
je 0x468ada
mov esi, eax
cmp di, si
jne 0x468b02
mov ecx, ebp
dec ebp
test ecx, ecx
jg 0x468a6b
mov eax, dword [esp + 0x84]
xor edx, edx
mov dl, byte [eax + 0x60]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub eax, edx
add ecx, eax
mov dword [esp + 0x10], ecx
mov edi, dword [esp + 0x20]
xor eax, eax
mov ecx, dword [edi + 0x88]
mov edx, dword [ecx + 0x78]
test edx, edx
je 0x468b8b
mov edx, dword [esp + 0x18]
test edx, edx
je 0x468b8b
mov esi, dword [ecx + 0x98]
test esi, esi
je 0x468b45
mov esi, dword [ecx + 0x2a0]
lea edx, [edx + edx*2]
lea edx, [esi + edx*4]
mov esi, dword [edx]
mov dword [esp + 0x2c], esi
mov esi, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
jmp 0x468b68
mov esi, dword [ecx + 0x74]
test esi, esi
je 0x468b8b
mov esi, dword [ecx + 0x150]
lea edx, [edx + edx*2]
lea edx, [esi + edx*4]
mov esi, dword [edx]
mov dword [esp + 0x2c], esi
mov esi, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
xor edx, edx
test esi, esi
setg dl
test edx, edx
je 0x468b8b
mov eax, dword [esp + 0x68]
push 0
push eax
call fcn.0044e550
mov ecx, dword [edi + 0x88]
push eax
call fcn.00455070
mov ecx, dword [esp + 0x20]
mov ebp, dword [0x5361f4]
mov esi, eax
mov eax, dword [esp + 0x10]
mov edi, dword [ecx + 0x88]
add edi, 0x100
test eax, eax
jle 0x468c4f
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x84], eax
mov ax, word [ebx]
cmp ax, 9
jne 0x468bd0
mov ecx, dword [edi]
mov eax, esi
cdq
idiv ecx
sub ecx, edx
add esi, ecx
jmp 0x468c37
mov dword [esp + 0x7c], eax
and eax, 0xffff
cmp word [eax*2 + 0x53623c], 0
lea eax, [eax*2 + 0x53623c]
jne 0x468c30
lea edx, [esp + 0x2c]
lea eax, [esp + 0x7c]
push edx
push 1
push eax
push ebp
call dword [0x4fd160]
mov eax, dword [0x536238]
test eax, eax
je 0x468c17
mov ecx, dword [0x536220]
mov eax, dword [esp + 0x2c]
sub eax, ecx
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x7c]
mov cx, word [esp + 0x2c]
and edx, 0xffff
lea eax, [edx*2 + 0x53623c]
mov word [eax], cx
xor edx, edx
mov dx, word [eax]
add esi, edx
mov eax, dword [esp + 0x84]
add ebx, 2
dec eax
mov dword [esp + 0x84], eax
jne 0x468bba
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 0x64]
mov eax, dword [esp + 0x70]
imul ecx, dword [0x536214]
sub esi, ecx
cmp eax, 0xffffffff
je 0x468d08
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0x20]
push edx
push eax
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x30]
push eax
push ecx
mov ecx, dword [edi + 0x88]
call fcn.00453e10
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x18]
cmp eax, ecx
jle 0x468d14
mov ecx, dword [esp + 0x44]
test ecx, ecx
jne 0x468d14
mov ecx, dword [edi + 0x88]
dec eax
test eax, eax
je 0x468d14
mov edx, dword [ecx + 0x98]
test edx, edx
je 0x468cd2
mov ecx, dword [ecx + 0x2a0]
lea edx, [eax + eax*2]
lea edx, [ecx + edx*4]
mov ecx, dword [edx]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
jmp 0x468cf5
mov edx, dword [ecx + 0x74]
test edx, edx
je 0x468d14
mov ecx, dword [ecx + 0x150]
lea edx, [eax + eax*2]
lea edx, [ecx + edx*4]
mov ecx, dword [edx]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x34], edx
xor edx, edx
test ecx, ecx
setg dl
mov ecx, edx
test ecx, ecx
je 0x468d14
mov dword [esp + 0x28], eax
jmp 0x468d14
mov edi, dword [esp + 0x20]
mov dword [esp + 0x28], 0xffffffff
mov ebx, dword [esp + 0x48]
mov eax, dword [0x536200]
mov ebp, dword [esp + 0x58]
add eax, ebx
push eax
push ebp
push ebx
push esi
mov ecx, edi
call fcn.00468eb0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x18]
cmp ecx, eax
je 0x468d6d
cmp eax, 0xffffffff
jne 0x468d50
mov ecx, dword [esp + 0x5c]
mov edx, dword [0x536200]
push ecx
add edx, ebx
push ebp
push edx
jmp 0x468d64
mov ecx, dword [edi + 0x60]
sub eax, ecx
mov ecx, dword [0x536200]
inc eax
imul eax, ecx
push eax
add ecx, ebx
push ebp
push ecx
push 0
mov ecx, edi
call fcn.00468eb0
mov ecx, dword [edi + 0x88]
mov eax, dword [ecx + 0x80]
test eax, eax
je 0x468e1b
mov ebx, dword [esp + 0x68]
test ebx, ebx
jle 0x468e1b
mov ebp, dword [esp + 0x6c]
test ebp, ebp
je 0x468dc5
mov edx, dword [ecx + 0x2d8]
mov eax, ebx
shl eax, 5
mov esi, dword [edx + eax + 8]
xor eax, eax
test ebp, ebp
jle 0x468dc1
mov dx, word [esi]
cmp dx, 9
je 0x468db9
cmp dx, 0x20
jne 0x468dc1
inc eax
add esi, 2
cmp eax, ebp
jl 0x468daa
cmp eax, ebp
jne 0x468e1b
dec ebx
test ebx, ebx
jle 0x468de0
mov eax, dword [ecx + 0x2d8]
mov edx, ebx
shl edx, 5
mov edx, dword [edx + eax]
dec edx
jne 0x468de0
dec ebx
test ebx, ebx
jg 0x468dd0
push 0
lea eax, [esp + 0x14]
push ebx
lea edx, [esp + 0x20]
push eax
push edx
call fcn.00453e10
mov eax, dword [esp + 0x18]
mov ebx, dword [edi + 0x60]
mov edx, dword [0x536200]
sub eax, ebx
imul eax, edx
mov ecx, dword [edi + 0x48]
add edx, eax
push edx
mov edx, dword [edi + 0x50]
sub edx, ecx
push edx
push eax
neg ecx
push ecx
mov ecx, edi
call fcn.00468eb0
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x468e36
mov ecx, dword [edi + 0x88]
push 0
push 0
push edi
call fcn.004d8a26
mov eax, dword [esp + 0x38]
mov ecx, dword [edi + 0x58]
cmp eax, ecx
jne 0x468e4c
mov ecx, dword [esp + 0x4c]
mov eax, dword [edi + 0x54]
cmp ecx, eax
je 0x468e7d
mov edx, dword [0x55f3fc]
cmp dword [edx + 0xd74], 1
jne 0x468e7d
mov ecx, edi
call fcn.00461590
cmp eax, dword [0x55f40c]
je 0x468e7d
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.004477e0
add esp, 0x18
mov eax, dword [edi + 0x88]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
push 0
mov dword [eax + 0xc4], ecx
push 0
mov ecx, edi
mov dword [0x55f7bc], edx
call fcn.00471380
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret 0xc