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

Disassembly:
push 0xffffffffffffffff
push 0x4627e2
mov eax, dword fs:[0]
push eax
mov eax, 0x50b0
call fcn.004538f0
mov eax, dword [0x46bee0]
xor eax, esp
mov dword [esp + 0x50ac], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x46bee0]
xor eax, esp
push eax
lea eax, [esp + 0x50c4]
mov dword fs:[0], eax
mov eax, dword [esp + 0x50d4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x50d8]
lea edx, [esp + 0x30c0]
sub edx, eax
mov esi, ecx
xor ebp, ebp
mov edi, edi
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
cmp cx, bp
jne 0x43a910
lea ecx, [esp + 0x30c0]
push ecx
call fcn.00431c30
mov edi, eax
lea edx, [esp + 0x30c0]
cmp edi, edx
jbe 0x43a95c
lea esp, [esp]
movzx eax, word [edi - 2]
push eax
call fcn.00445dd0
test al, al
je 0x43a95c
add edi, 0xfffffffe
lea ecx, [esp + 0x30c0]
cmp edi, ecx
ja 0x43a940
lea eax, [esp + 0x30c0]
mov edx, edi
sub edx, eax
sar edx, 1
mov ecx, 0x800
sub ecx, edx
push ecx
push 0x465410
push edi
call fcn.00446010
xor edx, edx
lea ecx, [esp + 0x10b8]
mov word [esp + 0x20c0], dx
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ebp
call fcn.00424740
lea eax, [esp + 0x30c0]
push eax
lea ecx, [esp + 0x10bc]
mov dword [esp + 0x50d0], ebp
call fcn.00424780
lea ecx, [esp + 0x1080]
call fcn.00447310
lea ecx, [esp + 0x1088]
call fcn.00447310
lea ecx, [esp + 0x1090]
call fcn.00447310
push ebp
lea ecx, [esp + 0x74]
push ecx
lea ecx, [esp + 0x10c0]
mov dword [esp + 0x20], ebp
call fcn.00424970
test al, al
je 0x43ac29
call fcn.00446620
push 0xbf50
call fcn.004547b0
add esp, 4
mov dword [esp + 0x2c], eax
mov byte [esp + 0x50cc], 1
test eax, eax
je 0x43aa2d
mov edx, dword [esp + 0x20]
push edx
mov ecx, eax
call fcn.00409a40
mov ebx, eax
mov dword [esp + 0x14], eax
jmp 0x43aa33
xor ebx, ebx
mov dword [esp + 0x14], ebx
lea eax, [esp + 0x70]
push eax
mov ecx, ebx
mov byte [esp + 0x50d0], 0
call fcn.00421ba0
test al, al
je 0x43abca
push 0x465430
lea ecx, [esp + 0x74]
push ecx
call fcn.00431910
test al, al
je 0x43aa9e
mov ebp, dword [esp + 0x18]
test ebp, ebp
sete dl
movzx eax, dl
push eax
push ebx
mov ecx, esi
call fcn.0043a000
mov edi, eax
test edi, edi
je 0x43abca
test ebp, ebp
jne 0x43aa94
mov ecx, ebx
call fcn.00422370
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
inc ebp
mov dword [esp + 0x18], ebp
jmp 0x43abc5
push 1
mov ecx, ebx
call fcn.00408620
test al, al
je 0x43abca
cmp dword [ebx + 0xaf10], 0
ja 0x43aacf
push 0x464484
lea ecx, [esp + 0x74]
push ecx
call fcn.00431910
test al, al
je 0x43abca
cmp byte [ebx + 0xaf05], 0
jne 0x43aae5
cmp byte [ebx + 0xaf14], 0
je 0x43ad66
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
push 0
push 0
push 0
mov byte [ecx + 0x63a0], 0
call eax
lea ecx, [esp + 0x70]
push ecx
call fcn.00431c30
mov ebp, eax
xor ebx, ebx
lea edx, [esp + 0x70]
lea edi, [ebx + 1]
cmp ebp, edx
jb 0x43ac0c
lea ebx, [ebx]
movzx eax, word [ebp]
push eax
call fcn.00445dd0
test al, al
je 0x43ab4a
movzx ecx, word [ebp]
sub ecx, 0x30
imul ecx, edi
lea edi, [edi + edi*4]
sub ebp, 2
lea edx, [esp + 0x70]
add ebx, ecx
add edi, edi
cmp ebp, edx
jae 0x43ab20
test ebx, ebx
je 0x43ac0c
cmp ebx, 0xffff
ja 0x43ac0c
mov edi, dword [esi + 4]
cmp ebx, edi
jbe 0x43aba3
cmp ebx, dword [esi + 8]
jbe 0x43ab78
mov eax, ebx
sub eax, edi
push eax
mov ecx, esi
call fcn.004381d0
jmp 0x43ab7b
mov dword [esi + 4], ebx
cmp edi, ebx
jae 0x43aba3
mov eax, edi
mov ecx, ebx
imul eax, eax, 0x1018
sub ecx, edi
jmp 0x43ab90
mov edx, dword [esi]
mov dword [eax + edx], 0
add eax, 0x1018
sub ecx, 1
jne 0x43ab90
cmp word [esp + 0x20c0], 0
lea edi, [ebx - 1]
jne 0x43abc5
push 1
lea eax, [esp + 0x20c4]
push eax
lea ecx, [esp + 0x78]
push ecx
call fcn.00432d80
cmp edi, 0xffffffff
jne 0x43abdf
cmp dword [esp + 0x14], 0
je 0x43ac0c
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
jmp 0x43ac0c
cmp edi, dword [esi + 4]
jae 0x43ac0c
mov ecx, dword [esp + 0x14]
imul edi, edi, 0x1018
add edi, dword [esi]
push 0x800
lea edx, [esp + 0x74]
mov dword [edi], ecx
mov byte [edi + 0x1010], 0
push edx
add edi, 4
push edi
call fcn.00446010
push 0
lea eax, [esp + 0x74]
push eax
lea ecx, [esp + 0x10c0]
call fcn.00424970
test al, al
jne 0x43a9f7
xor ebp, ebp
cmp byte [esp + 0x50dc], 0
mov edi, dword [esp + 0x18]
je 0x43ac3f
cmp edi, ebp
je 0x43ad89
push edi
push 0xe68
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 8
cmp edi, ebp
je 0x43ad89
push 0xe94
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 4
xor ebx, ebx
mov dword [esi + 0x34], ebp
cmp dword [esi + 0x2c], ebp
jbe 0x43ad33
mov dword [esp + 0x14], ebp
mov edi, dword [esi]
add edi, dword [esp + 0x14]
cmp dword [edi], ebp
je 0x43ad08
lea ebp, [edi + 4]
push ebp
push 0x465380
call fcn.00417aa0
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0x83b0]
mov eax, dword [edi]
add esp, 8
push 4
push 0x7fffffff
push 0x7fffffff
push ecx
push 0
lea edx, [esp + 0x3c]
push edx
push eax
call fcn.00423bb0
mov ecx, dword [esp + 0x28]
cmp ecx, dword [edi + 0x1004]
sete al
mov byte [edi + 0x1011], al
test al, al
jne 0x43ad06
push ebp
push 0xd56
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 8
cmp ebx, dword [esi + 0x24]
jb 0x43ad06
mov ecx, dword [edi]
call fcn.00421d00
dec dword [esp + 0x18]
mov dword [edi], 0
xor ebp, ebp
cmp ebx, dword [esi + 0x24]
jae 0x43ad1d
cmp dword [edi], ebp
je 0x43ad1a
cmp byte [edi + 0x1011], 0
jne 0x43ad1d
inc dword [esi + 0x34]
add dword [esp + 0x14], 0x1018
inc ebx
cmp ebx, dword [esi + 0x2c]
jb 0x43ac80
mov edi, dword [esp + 0x18]
mov edx, dword [esi + 0x34]
push edx
push 0xe66
call fcn.00440940
push eax
call fcn.00417aa0
mov eax, dword [esi + 0x34]
add esp, 8
cmp eax, ebp
jne 0x43ada7
push 0xe6a
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 4
jmp 0x43ad89
lea ecx, [esp + 0x30c0]
push ecx
push 0xe62
call fcn.00440940
push eax
lea edx, [esp + 0x30c8]
push edx
call fcn.004183e0
add esp, 0xc
lea ecx, [esp + 0x10b8]
mov dword [esp + 0x50cc], 0xffffffff
call fcn.00424760
xor al, al
jmp 0x43b311
cmp eax, edi
jbe 0x43adc0
push 0xe6c
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 4
jmp 0x43ad89
push 0xe6e
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 4
mov dword [esp + 0x24], ebp
cmp dword [esi + 0x24], ebp
jbe 0x43afc4
mov dword [esp + 0x14], ebp
mov edi, dword [esi]
add edi, dword [esp + 0x14]
mov ecx, dword [edi]
cmp ecx, ebp
je 0x43aeac
cmp byte [edi + 0x1011], 0
jne 0x43aeac
call fcn.00421d00
lea ebp, [edi + 4]
lea edx, [esp + 0x40c0]
mov eax, ebp
sub edx, ebp
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x43ae14
lea eax, [esp + 0x40c0]
add eax, 0xfffffffe
lea ecx, [ecx]
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x43ae30
mov ecx, dword [str..bad]
mov edx, dword [0x4653fc]
mov dword [eax], ecx
mov cx, word [0x465400]
push ebp
mov dword [eax + 4], edx
push 0xcda
mov word [eax + 8], cx
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 8
lea edx, [esp + 0x40c0]
push edx
push ebp
push 0xe72
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 0xc
lea eax, [esp + 0x40c0]
push eax
push ebp
call fcn.00422b40
mov ecx, dword [edi]
test ecx, ecx
je 0x43aea4
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov dword [edi], 0
xor ebp, ebp
cmp dword [edi], ebp
sete al
mov byte [edi + 0x1010], al
test al, al
je 0x43af97
push 0x800
lea ecx, [esp + 0x20c4]
push ecx
lea ebp, [edi + 4]
push ebp
call fcn.00446010
push ebp
push 0xe70
call fcn.00440940
push eax
call fcn.00417aa0
push 0x1024
call fcn.004547b0
add esp, 0xc
mov dword [esp + 0x2c], eax
mov byte [esp + 0x50cc], 2
test eax, eax
je 0x43af0e
mov ecx, eax
call fcn.00421a00
mov ebx, eax
jmp 0x43af10
xor ebx, ebx
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 0x6130]
push 0
push 0
push 0x7fffffff
push 0x7fffffff
lea edx, [esp + 0x2f]
push edx
push ecx
push 0x800
push ebp
push ebx
push eax
mov byte [esp + 0x50f4], 0
call fcn.004217c0
test al, al
jne 0x43af77
cmp byte [esp + 0x1f], al
jne 0x43af5a
push ebp
push 0
mov ecx, 0x47f1a0
call fcn.0041d3b0
movzx edx, byte [esp + 0x1f]
neg edx
sbb edx, edx
and edx, 0xf6
add edx, 9
push edx
mov ecx, 0x47f1a0
call fcn.0041d030
mov eax, dword [edi + 0x100c]
mov ecx, dword [edi + 0x1008]
push eax
push ecx
mov ecx, ebx
call fcn.004225d0
mov dword [edi], ebx
mov byte [edi + 0x1010], 1
xor ebp, ebp
push ebp
push 0x800
lea edx, [esp + 0x20c8]
push edx
call fcn.00431cf0
mov eax, dword [esp + 0x24]
add dword [esp + 0x14], 0x1018
inc eax
mov dword [esp + 0x24], eax
cmp eax, dword [esi + 0x24]
jb 0x43ade4
or edi, 0xffffffff
push 0x464b50
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], ebp
mov dword [esp + 0x2c], edi
call fcn.00417aa0
mov eax, dword [esi + 0x2c]
push eax
mov dword [esi + 0x34], ebp
call fcn.004538cf
mov dword [esi + 0x30], eax
add esp, 8
xor eax, eax
cmp dword [esi + 0x2c], ebp
jbe 0x43b035
xor edx, edx
mov ecx, dword [esi]
add ecx, edx
cmp dword [ecx], ebp
je 0x43b010
cmp byte [ecx + 0x1010], 0
jne 0x43b010
mov ecx, 1
jmp 0x43b012
xor ecx, ecx
mov ebx, dword [esi + 0x30]
mov byte [eax + ebx], cl
cmp eax, dword [esi + 0x24]
jae 0x43b029
mov ecx, dword [esi + 0x30]
cmp byte [eax + ecx], 0
jne 0x43b029
inc dword [esi + 0x34]
inc eax
add edx, 0x1018
cmp eax, dword [esi + 0x2c]
jb 0x43aff8
xor edx, edx
mov eax, 0x4000000
div dword [esi + 0x34]
mov dword [esi + 0x20], eax
test al, 1
je 0x43b04a
dec eax
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x2c]
and dword [esi + 0x20], 0xfffffff0
xor ecx, ecx
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004538cf
add esp, 4
lea ecx, [esp + 0x48]
mov dword [esp + 0x2c], eax
call fcn.004429b0
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x28]
mov edx, dword [esi + 0x24]
push eax
push ecx
push edx
lea ecx, [esp + 0x54]
mov byte [esp + 0x50d8], 3
call fcn.004429e0
test al, al
jne 0x43b0c2
lea ecx, [esp + 0x48]
mov byte [esp + 0x50cc], al
call fcn.004422c0
lea ecx, [esp + 0x10b8]
mov dword [esp + 0x50cc], edi
call fcn.00424760
xor al, al
jmp 0x43b311
mov eax, dword [esi + 0x20]
add eax, 0x10
push eax
call fcn.004538cf
mov ecx, eax
not ecx
inc ecx
and ecx, 0xf
add esp, 4
add ecx, eax
mov dword [esi + 0x10], eax
mov dword [esp + 0x18], ecx
call fcn.00446620
mov ebx, dword [esi + 0x24]
xor ebp, ebp
mov dword [esp + 0x14], ebp
cmp ebx, ebp
jbe 0x43b26e
jmp 0x43b100
mov ecx, dword [esi + 0x30]
cmp byte [ecx + ebp], 0
mov eax, ebp
jne 0x43b11d
cmp byte [ecx + ebx], 0
jne 0x43b11a
mov eax, ecx
inc ebx
cmp byte [ebx + eax], 0
je 0x43b113
mov eax, ebx
inc ebx
imul eax, eax, 0x1018
add eax, dword [esi]
xor edi, edi
mov ecx, dword [eax]
test ecx, ecx
je 0x43b148
cmp byte [eax + 0x1010], 0
jne 0x43b148
mov eax, dword [esi + 0x20]
mov edx, dword [ecx]
mov edx, dword [edx + 4]
push eax
mov eax, dword [esp + 0x1c]
push eax
call edx
mov edi, eax
mov eax, dword [esi + 0x20]
cmp edi, eax
je 0x43b164
sub eax, edi
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [edi + eax]
push 0
push ecx
call fcn.00453e70
add esp, 0xc
cmp edi, dword [esp + 0x14]
jle 0x43b16e
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
push 0
push edi
push edx
push ebp
push eax
mov ecx, esi
call fcn.00439af0
inc ebp
cmp ebp, dword [esi + 0x24]
jb 0x43b100
xor eax, eax
cmp edi, eax
je 0x43b26e
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
cmp dword [esi + 0x24], eax
jbe 0x43b21c
mov dword [esp + 0x24], eax
lea esp, [esp]
mov ecx, dword [esi + 0x30]
cmp byte [eax + ecx], 0
jne 0x43b20a
mov edi, dword [esi]
add edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x14]
mov ecx, dword [edi + 0x100c]
mov ebp, dword [edi + 0x1008]
mov eax, ebx
cdq
cmp edx, ecx
ja 0x43b1de
jb 0x43b1dc
cmp eax, ebp
jae 0x43b1de
mov ebp, ebx
mov eax, dword [esi + 0x20]
mov ebx, dword [esp + 0x3c]
mov ecx, dword [edi]
imul eax, ebx
add eax, dword [esi + 0x1c]
push ebp
push eax
call fcn.00421e00
mov eax, dword [esp + 0x38]
inc ebx
sub dword [edi + 0x1008], ebp
mov dword [esp + 0x3c], ebx
sbb dword [edi + 0x100c], 0
add dword [esp + 0x24], 0x1018
inc eax
mov dword [esp + 0x38], eax
cmp eax, dword [esi + 0x24]
jb 0x43b1b0
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x34]
push edx
mov edx, dword [esp + 0x34]
push eax
push ecx
push edx
call fcn.00445bd0
mov edi, eax
mov eax, dword [esp + 0x20]
cmp byte [eax + 0x6144], 0
jne 0x43b25c
cmp edi, dword [esp + 0x28]
je 0x43b25c
push edi
push str._b_b_b_b_3d__
call fcn.00417aa0
add esp, 8
mov dword [esp + 0x28], edi
mov eax, dword [esp + 0x14]
cdq
add dword [esp + 0x30], eax
adc dword [esp + 0x34], edx
jmp 0x43b0e2
xor ebx, ebx
cmp dword [esi + 0x2c], ebx
jbe 0x43b291
xor edi, edi
mov ecx, dword [esi]
mov ecx, dword [edi + ecx]
test ecx, ecx
je 0x43b285
call fcn.00421d00
inc ebx
add edi, 0x1018
cmp ebx, dword [esi + 0x2c]
jb 0x43b277
mov esi, dword [esi + 0x30]
push esi
call fcn.004542d0
mov edx, dword [esp + 0x30]
push edx
call fcn.004542d0
mov esi, dword [esp + 0x28]
add esp, 8
cmp byte [esi + 0x6144], 0
jne 0x43b2c1
push str._b_b_b_b100__
call fcn.00417aa0
add esp, 4
cmp byte [esp + 0x50dc], 0
jne 0x43b2e7
cmp byte [esi + 0x6146], 0
jne 0x43b2e7
push 0xd1e
call fcn.00440940
push eax
call fcn.00417aa0
add esp, 4
lea ecx, [esp + 0x48]
mov byte [esp + 0x50cc], 0
call fcn.004422c0
lea ecx, [esp + 0x10b8]
mov dword [esp + 0x50cc], 0xffffffff
call fcn.00424760
mov al, 1
mov ecx, dword [esp + 0x50c4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x50ac]
xor ecx, esp
call fcn.004538da
add esp, 0x50bc
ret 0xc