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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x469154
mov eax, dword fs:[0]
push eax
sub esp, 0xa8
push ebx
push esi
push edi
mov eax, dword [0x484060]
xor eax, esp
push eax
lea eax, [esp + 0xb8]
mov dword fs:[0], eax
mov dword [esp + 0x18], ecx
mov ebx, dword [ebp + 0x10]
and dword [esp + 0x14], 0
cmp dword [ebx], 0
mov edi, dword [ebp + 8]
mov esi, 0x46f160
je 0x43de4a
push ecx
mov eax, esp
mov dword [esp + 0x24], esp
push esi
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [edi + 8]
call fcn.0043d71b
mov eax, dword [edi + 0x28]
test eax, eax
jne 0x43de76
lea ecx, [edi + 0x38]
mov esi, ebx
call fcn.0044097c
xor eax, eax
inc eax
mov ecx, dword [esp + 0xb8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 1
jne 0x43dfa2
cmp dword [edi + 0x34], 0
jne 0x43dea1
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push esi
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [edi + 8]
call fcn.0043d71b
mov ecx, dword [edi + 0x34]
mov esi, dword [ebp + 0xc]
call fcn.00440518
mov dword [esp + 0x14], eax
test eax, eax
jne 0x43deec
mov eax, dword [esp + 0x18]
mov ecx, dword [edi + 0x34]
mov esi, dword [eax + 0x30]
call fcn.00440518
mov dword [esp + 0x14], eax
test eax, eax
jne 0x43deec
mov eax, dword [ebp + 0xc]
push ecx
mov esi, esp
mov dword [esp + 0x24], esp
call fcn.0043d5ce
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
push eax
push dword [esp + 0x20]
lea ecx, [edi + 8]
call fcn.0043d71b
mov eax, dword [esp + 0x14]
mov dword [ebx], 7
mov dword [ebx + 8], eax
mov esi, dword [edi + 0x2c]
jmp 0x43df95
cmp dword [esi + 0x28], 3
jne 0x43df72
mov eax, dword [ebx]
cmp eax, 7
jne 0x43df16
mov ecx, dword [ebx + 8]
call fcn.00440acd
cmp eax, 5
jne 0x43df72
mov ecx, ebx
call fcn.00440b4e
mov edi, dword [eax + 8]
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push dword [esi + 0x34]
push eax
call fcn.004021e4
call fcn.004407fd
mov edi, eax
test edi, edi
jne 0x43df60
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
mov eax, ebx
call fcn.00440913
mov dword [ebx], 7
mov dword [ebx + 8], edi
jmp 0x43df92
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
mov esi, dword [esi + 0x2c]
test esi, esi
jne 0x43df01
jmp 0x43de5b
cmp eax, 4
jne 0x43e017
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x38], 0
je 0x43e004
mov ecx, dword [edi + 0x2c]
test ecx, ecx
je 0x43dfd4
lea eax, [esp + 0x20]
push eax
call fcn.0043a0e6
and dword [esp + 0xc0], 0
mov esi, dword [eax]
mov dword [esp + 0x14], 1
push esi
push dword [edi + 0x34]
push 0x478e60
push dword [esp + 0x24]
call fcn.0043f7ee
or dword [esp + 0xd0], 0xffffffff
add esp, 0x10
test byte [esp + 0x14], 1
je 0x43e004
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
call fcn.004017b8
push ebx
push dword [ebp + 0xc]
push edi
push dword [esp + 0x24]
call fcn.0043ef1e
jmp 0x43de5e
mov esi, edi
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x2c]
push 6
mov dword [esp + 0x2c], eax
pop ecx
xor eax, eax
lea edi, [esp + 0x9c]
mov dword [esp + 0x2c], edx
rep stosd dword es:[edi], eax
push 6
pop ecx
lea edi, [esp + 0x84]
mov dword [esp + 0xc0], 1
rep stosd dword es:[edi], eax
mov byte [esp + 0xc0], 2
test edx, edx
jne 0x43e0a7
push ecx
mov dword [esp + 0x18], esp
mov eax, esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
lea eax, [esp + 0x84]
mov byte [esp + 0xc0], 1
call fcn.00440913
or dword [esp + 0xc0], 0xffffffff
lea eax, [esp + 0x9c]
call fcn.00440913
xor eax, eax
jmp 0x43de5e
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x9c]
push eax
push dword [ebp + 0xc]
push dword [esp + 0x34]
call fcn.0043dde3
test eax, eax
je 0x43e078
cmp dword [esp + 0x28], 0
je 0x43e0e6
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x84]
push eax
push dword [ebp + 0xc]
push dword [esp + 0x30]
call fcn.0043dde3
test eax, eax
je 0x43e078
lea ecx, [esp + 0x9c]
call fcn.00440b4e
mov edi, eax
lea ecx, [esp + 0x84]
mov dword [esp + 0x24], edi
call fcn.00440b4e
mov ecx, dword [esi + 0x28]
cmp ecx, 0x18
mov dword [esp + 0x1c], eax
jg 0x43e56b
cmp ecx, 0x13
jge 0x43e3e4
push 2
pop eax
cmp ecx, eax
je 0x43e2c0
cmp ecx, 4
jle 0x43e589
cmp ecx, 0xe
jle 0x43e8d9
cmp ecx, 0x12
jg 0x43e589
cmp dword [esp + 0x28], 0
je 0x43e16d
push ecx
mov eax, esp
mov dword [esp + 0x34], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
push 2
pop eax
cmp dword [edi], eax
je 0x43e194
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
push 2
pop eax
mov ecx, dword [esi + 0x28]
cmp ecx, 0xf
jne 0x43e1af
cmp dword [edi], eax
jne 0x43e22b
mov ecx, dword [edi + 8]
lea edx, [ecx + 1]
mov dword [edi + 8], edx
jmp 0x43e224
cmp ecx, 0x10
jne 0x43e1c0
cmp dword [edi], eax
jne 0x43e22b
mov ecx, dword [edi + 8]
lea edx, [ecx - 1]
jmp 0x43e1aa
cmp ecx, 0x11
jne 0x43e1d7
cmp dword [edi], eax
jne 0x43e22b
inc dword [edi + 8]
mov dword [ebx], 7
mov dword [ebx + 8], edi
jmp 0x43e24e
cmp ecx, 0x12
jne 0x43e1e5
cmp dword [edi], eax
jne 0x43e22b
dec dword [edi + 8]
jmp 0x43e1cc
cmp ecx, 0x15
jne 0x43e1f3
cmp dword [edi], eax
jne 0x43e22b
mov ecx, dword [edi + 8]
jmp 0x43e224
cmp ecx, 0x16
jne 0x43e203
cmp dword [edi], eax
jne 0x43e22b
mov ecx, dword [edi + 8]
neg ecx
jmp 0x43e224
cmp ecx, 0x17
jne 0x43e213
cmp dword [edi], eax
jne 0x43e22b
mov ecx, dword [edi + 8]
not ecx
jmp 0x43e224
cmp ecx, 0x18
jne 0x43e22b
cmp dword [edi], eax
jne 0x43e22b
xor ecx, ecx
cmp dword [edi + 8], ecx
sete cl
mov dword [ebx], eax
mov dword [ebx + 8], ecx
jmp 0x43e24e
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 0xc8
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x38], 0
je 0x43e5ac
lea eax, [esp + 0x78]
push eax
mov ecx, edi
call fcn.00440c2d
mov edi, eax
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x6c]
push eax
mov byte [esp + 0xc4], 0x17
call fcn.0043a0e6
mov byte [esp + 0xc0], 0x18
mov edi, dword [edi]
mov eax, dword [eax]
push edi
push eax
mov eax, dword [esi + 0x28]
call fcn.0043fcc0
push eax
push 0x478f3c
push dword [esp + 0x28]
call fcn.0043f7ee
mov eax, dword [esp + 0x80]
add esp, 0x14
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x78]
jmp 0x43ef11
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x34]
mov esi, dword [ebp + 0xc]
call fcn.00440518
mov esi, eax
test esi, esi
jne 0x43e327
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
push eax
push dword [esp + 0x20]
lea ecx, [edi + 8]
call fcn.0043d71b
lea eax, [esp + 0x84]
mov byte [esp + 0xc0], 1
call fcn.00440913
or dword [esp + 0xc0], 0xffffffff
lea eax, [esp + 0x9c]
call fcn.00440913
mov eax, esi
jmp 0x43de5e
cmp dword [esi], 8
je 0x43e34f
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 0x132
push dword [esp + 0x20]
lea ecx, [edi + 8]
call fcn.0043d71b
mov eax, dword [esp + 0x24]
cmp dword [eax], 2
je 0x43e37b
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 0x12f
push dword [esp + 0x20]
lea ecx, [edi + 8]
call fcn.0043d71b
cmp dword [esi], 8
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 8]
mov dword [esp + 0x14], ecx
je 0x43e38f
xor esi, esi
jmp 0x43e3ac
test ecx, ecx
jl 0x43e3a6
mov eax, dword [esi + 8]
cmp ecx, dword [eax]
jge 0x43e3a6
mov esi, dword [esp + 0x14]
imul esi, esi, 0x18
add esi, dword [eax + 4]
jmp 0x43e3a8
xor esi, esi
test esi, esi
jne 0x43e3cf
push ecx
mov eax, esp
mov dword [esp + 0x24], esp
push 0x46f160
push eax
call fcn.004021e4
push 0x133
push dword [esp + 0x20]
lea ecx, [edi + 8]
call fcn.0043d71b
mov eax, dword [esp + 0x14]
mov dword [ebx], 7
mov dword [ebx + 8], esi
mov dword [ebx + 0x10], eax
jmp 0x43e5ac
je 0x43e3eb
cmp ecx, 0x14
jne 0x43e40e
push ecx
mov eax, esp
mov dword [esp + 0x34], esp
push 0x46f160
push eax
call fcn.004021e4
push 0xc8
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
cmp dword [esp + 0x28], 0
je 0x43e435
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
push 2
pop eax
cmp dword [edi], eax
je 0x43e45f
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
push 2
pop eax
mov ecx, dword [esi + 0x28]
cmp ecx, 0x15
jne 0x43e470
cmp dword [edi], eax
jne 0x43e4a8
mov ecx, dword [edi + 8]
jmp 0x43e4a1
cmp ecx, 0x16
jne 0x43e480
cmp dword [edi], eax
jne 0x43e4a8
mov ecx, dword [edi + 8]
neg ecx
jmp 0x43e4a1
cmp ecx, 0x17
jne 0x43e490
cmp dword [edi], eax
jne 0x43e4a8
mov ecx, dword [edi + 8]
not ecx
jmp 0x43e4a1
cmp ecx, 0x18
jne 0x43e4a8
cmp dword [edi], eax
jne 0x43e4a8
xor ecx, ecx
cmp dword [edi + 8], ecx
sete cl
mov dword [ebx], eax
mov dword [ebx + 8], ecx
jmp 0x43e4cb
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 0xc8
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x38], 0
je 0x43e5ac
lea eax, [esp + 0x80]
push eax
mov ecx, edi
call fcn.00440c2d
mov edi, eax
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xc4], 0x19
call fcn.0043a0e6
mov dword [esp + 0x14], eax
lea eax, [esp + 0x64]
push eax
mov ecx, ebx
mov byte [esp + 0xc4], 0x1a
call fcn.00440c2d
mov byte [esp + 0xc0], 0x1b
mov edi, dword [edi]
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx]
mov edx, dword [eax]
mov eax, dword [esi + 0x28]
push edi
push ecx
call fcn.0043fcc0
push eax
push edx
push 0x478f6c
push dword [esp + 0x2c]
call fcn.0043f7ee
mov eax, dword [esp + 0x7c]
add esp, 0x18
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x44]
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x80]
jmp 0x43ef11
cmp ecx, 0x19
jl 0x43e589
cmp ecx, 0x1d
jle 0x43e8d9
cmp ecx, 0x1e
je 0x43e5b4
jle 0x43e589
cmp ecx, 0x21
jle 0x43e8d9
push ecx
mov eax, esp
mov dword [esp + 0x34], esp
push 0x46f160
push eax
call fcn.004021e4
push 0xc8
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
xor esi, esi
inc esi
jmp 0x43e2f8
cmp dword [esp + 0x28], 0
jne 0x43e5c5
push ecx
mov dword [esp + 0x34], esp
jmp 0x43e05d
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 0x28]
cmp eax, 1
je 0x43e5da
cmp eax, 2
jne 0x43e8c0
cmp dword [ecx + 0x34], 0
je 0x43e8c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
mov eax, dword [eax]
cmp ecx, eax
je 0x43e62c
cmp ecx, 4
jne 0x43e5ff
cmp eax, 6
je 0x43e62c
cmp eax, 2
je 0x43e62c
cmp ecx, 2
jne 0x43e609
cmp eax, 3
je 0x43e62c
push ecx
mov eax, esp
mov dword [esp + 0x34], esp
push 0x46f160
push eax
call fcn.004021e4
push 0x12d
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
cmp dword [edi], 5
jne 0x43e6c2
mov eax, dword [esp + 0x1c]
cmp dword [eax], 5
jne 0x43e6c2
mov eax, dword [edi + 8]
mov eax, dword [eax]
add eax, 0x28
mov eax, dword [eax]
sub eax, 0x10
call fcn.004015e7
add eax, 0x10
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
mov byte [esp + 0xc0], 3
mov eax, dword [eax + 8]
mov eax, dword [eax]
add eax, 0x28
mov eax, dword [eax]
lea ecx, [esp + 0x14]
push ecx
mov ecx, eax
call fcn.004014b1
test eax, eax
mov byte [esp + 0xc0], 2
mov eax, dword [esp + 0x14]
setne byte [esp + 0x37]
add eax, 0xfffffff0
call fcn.004017b8
cmp byte [esp + 0x37], 0
je 0x43e6c2
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 0x12d
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x38], 0
je 0x43e8a0
mov eax, dword [0x4872ec]
mov esi, 0x4872ec
mov ecx, esi
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x14], eax
mov byte [esp + 0xc0], 4
mov eax, dword [0x4872ec]
mov ecx, esi
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
mov byte [esp + 0xc0], 5
cmp dword [eax + 0x28], 2
jne 0x43e71e
push dword [edi + 0x10]
push dword [eax + 0x34]
push str._s__d_
jmp 0x43e730
mov ecx, dword [eax + 0x2c]
test ecx, ecx
je 0x43e73f
push dword [ecx + 0x34]
push dword [eax + 0x34]
push str._s._s
lea eax, [esp + 0x20]
push eax
call fcn.004024b6
add esp, 0x10
jmp 0x43e754
push dword [eax + 0x34]
lea eax, [esp + 0x18]
push 0x470a04
push eax
call fcn.004024b6
add esp, 0xc
mov esi, dword [esp + 0x28]
cmp dword [esi + 0x34], 0
je 0x43e82c
cmp dword [esi + 0x28], 2
jne 0x43e7ac
mov edi, dword [esp + 0x1c]
lea eax, [esp + 0x4c]
push eax
mov ecx, edi
call fcn.00440c2d
mov byte [esp + 0xc0], 6
push dword [edi + 0x10]
mov eax, dword [eax]
push dword [esi + 0x34]
push eax
lea eax, [esp + 0x2c]
push str._s_____s__d__
push eax
call fcn.004024b6
mov byte [esp + 0xd4], 5
mov eax, dword [esp + 0x60]
add esp, 0x14
jmp 0x43e865
cmp dword [esi + 0x2c], 0
mov ecx, dword [esp + 0x1c]
je 0x43e7f4
lea eax, [esp + 0x38]
push eax
call fcn.00440c2d
mov byte [esp + 0xc0], 7
mov ecx, dword [esi + 0x2c]
push dword [ecx + 0x34]
mov eax, dword [eax]
push dword [esi + 0x34]
push eax
lea eax, [esp + 0x2c]
push str._s_____s._s_
push eax
call fcn.004024b6
mov byte [esp + 0xd4], 5
mov eax, dword [esp + 0x4c]
add esp, 0x14
jmp 0x43e865
lea eax, [esp + 0x54]
push eax
call fcn.00440c2d
mov byte [esp + 0xc0], 8
push dword [esi + 0x34]
mov eax, dword [eax]
push eax
lea eax, [esp + 0x28]
push str._s_____s_
push eax
call fcn.004024b6
mov byte [esp + 0xd0], 5
mov eax, dword [esp + 0x64]
add esp, 0x10
jmp 0x43e865
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x7c]
push eax
call fcn.00440c2d
mov byte [esp + 0xc0], 9
push dword [eax]
lea eax, [esp + 0x24]
push 0x478edc
push eax
call fcn.004024b6
mov byte [esp + 0xcc], 5
mov eax, dword [esp + 0x88]
add esp, 0xc
add eax, 0xfffffff0
call fcn.004017b8
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x14]
push esi
push edi
push 0x478ee4
push dword [esp + 0x24]
call fcn.0043f7ee
add esp, 0x10
lea eax, [esi - 0x10]
call fcn.004017b8
lea eax, [edi - 0x10]
mov byte [esp + 0xc0], 2
call fcn.004017b8
push dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
call fcn.00440a04
lea ecx, [esp + 0x84]
mov esi, ebx
call fcn.0044097c
jmp 0x43e5ac
push ecx
mov eax, esp
mov dword [esp + 0x34], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
jmp 0x43e5a0
cmp dword [esp + 0x28], 0
jne 0x43e900
push ecx
mov eax, esp
mov dword [esp + 0x34], esp
push 0x46f160
push eax
call fcn.004021e4
push 1
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
mov eax, dword [esi + 0x28]
cmp eax, 0x19
jne 0x43ea4c
mov edx, dword [edi]
push 2
pop ecx
cmp edx, ecx
jne 0x43e92c
mov eax, dword [esp + 0x1c]
cmp dword [eax], ecx
jne 0x43ed7b
mov eax, dword [eax + 8]
add eax, dword [edi + 8]
jmp 0x43ea92
mov eax, edi
call fcn.00440c1a
test eax, eax
je 0x43ea19
mov eax, dword [esp + 0x1c]
call fcn.00440c1a
test eax, eax
je 0x43e9a7
push dword [esp + 0x1c]
lea esi, [esp + 0x78]
call fcn.00440add
mov edi, eax
push dword [esp + 0x24]
lea esi, [esp + 0x60]
mov byte [esp + 0xc4], 0xa
call fcn.00440add
push ecx
mov byte [esp + 0xc4], 0xb
mov ecx, esp
mov dword [esp + 0x18], esp
push edi
push ecx
mov ecx, eax
call fcn.0040528f
pop ecx
pop ecx
mov edi, ebx
call fcn.00440bc7
mov eax, dword [esp + 0x5c]
add eax, 0xfffffff0
call fcn.004017b8
mov byte [esp + 0xc0], 2
mov eax, dword [esp + 0x74]
jmp 0x43ea05
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x40]
push eax
call fcn.00440c2d
mov edi, eax
push dword [esp + 0x24]
lea esi, [esp + 0x40]
mov byte [esp + 0xc4], 0xc
call fcn.00440add
push ecx
mov byte [esp + 0xc4], 0xd
mov ecx, esp
mov dword [esp + 0x18], esp
push edi
push ecx
mov ecx, eax
call fcn.0040528f
pop ecx
pop ecx
mov edi, ebx
call fcn.00440bc7
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
call fcn.004017b8
mov byte [esp + 0xc0], 2
mov eax, dword [esp + 0x40]
add eax, 0xfffffff0
call fcn.004017b8
mov edi, dword [esp + 0x24]
mov esi, dword [ebp + 8]
jmp 0x43ed9e
push 3
pop ecx
cmp edx, ecx
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
cmp edx, 2
jne 0x43ea3f
fild dword [eax + 8]
fadd qword [edi + 8]
mov dword [ebx], ecx
fstp qword [ebx + 8]
jmp 0x43ed9e
cmp edx, ecx
jne 0x43ed7b
fld qword [eax + 8]
jmp 0x43ea32
cmp eax, 0x1a
jne 0x43ea73
push 2
pop edx
cmp dword [edi], edx
jne 0x43ed7b
mov ecx, dword [esp + 0x1c]
cmp dword [ecx], edx
jne 0x43ed7b
mov eax, dword [edi + 8]
sub eax, dword [ecx + 8]
jmp 0x43eb72
cmp eax, 0x1b
jne 0x43eadd
mov eax, dword [edi]
push 2
pop ecx
cmp eax, ecx
jne 0x43eaaf
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
cmp edx, ecx
jne 0x43ea9c
mov eax, dword [eax + 8]
imul eax, dword [edi + 8]
mov dword [ebx], ecx
mov dword [ebx + 8], eax
jmp 0x43ed9e
push 3
pop ecx
cmp edx, ecx
jne 0x43ed7b
fild dword [edi + 8]
fmul qword [eax + 8]
jmp 0x43ea35
push 3
pop ecx
cmp eax, ecx
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
cmp edx, 2
jne 0x43ead0
fild dword [eax + 8]
fmul qword [edi + 8]
jmp 0x43ea35
cmp edx, ecx
jne 0x43ed7b
fld qword [eax + 8]
jmp 0x43eac8
cmp eax, 0x1c
jne 0x43eb4f
mov eax, dword [edi]
cmp eax, 2
jne 0x43eb1b
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
cmp eax, 2
jne 0x43eb03
mov eax, dword [edi + 8]
cdq
idiv dword [ecx + 8]
mov dword [ebx], 2
jmp 0x43ea94
push 3
pop edx
cmp eax, edx
jne 0x43ed7b
fild dword [edi + 8]
fdiv qword [ecx + 8]
mov dword [ebx], edx
jmp 0x43ea37
push 3
pop ecx
cmp eax, ecx
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
cmp edx, 2
jne 0x43eb3c
fild dword [eax + 8]
fdivr qword [edi + 8]
jmp 0x43ea35
cmp edx, ecx
jne 0x43ed7b
fld qword [edi + 8]
fdiv qword [eax + 8]
jmp 0x43ea35
cmp eax, 5
jne 0x43ebdc
mov ecx, dword [esp + 0x1c]
push 2
pop edx
cmp dword [edi], edx
jne 0x43eb79
cmp dword [ecx], edx
jne 0x43eb79
mov eax, dword [edi + 8]
sub eax, dword [ecx + 8]
neg eax
sbb eax, eax
inc eax
mov dword [ebx], edx
jmp 0x43ea94
mov eax, edi
call fcn.00440c1a
test eax, eax
je 0x43ed7b
mov eax, ecx
call fcn.00440c1a
test eax, eax
je 0x43ed7b
push dword [esp + 0x1c]
lea esi, [esp + 0x4c]
call fcn.00440add
mov ecx, dword [esp + 0x24]
mov byte [esp + 0xc0], 0xe
mov edx, dword [ecx + 8]
mov eax, dword [eax]
push edx
mov ecx, eax
call fcn.004014b1
neg eax
sbb eax, eax
inc eax
mov dword [ebx + 8], eax
mov byte [esp + 0xc0], 2
mov eax, dword [esp + 0x48]
mov dword [ebx], 2
jmp 0x43ea05
cmp eax, 6
jne 0x43ec69
cmp dword [edi], 2
mov ecx, dword [esp + 0x1c]
jne 0x43ec05
cmp dword [ecx], 2
jne 0x43ec05
mov eax, dword [edi + 8]
xor edx, edx
cmp eax, dword [ecx + 8]
setne dl
mov eax, edx
jmp 0x43eafb
mov eax, edi
call fcn.00440c1a
test eax, eax
je 0x43ed7b
mov eax, ecx
call fcn.00440c1a
test eax, eax
je 0x43ed7b
push dword [esp + 0x1c]
lea esi, [esp + 0x54]
call fcn.00440add
mov ecx, dword [esp + 0x24]
mov byte [esp + 0xc0], 0xf
mov edx, dword [ecx + 8]
mov eax, dword [eax]
push edx
mov ecx, eax
call fcn.004014b1
neg eax
sbb eax, eax
neg eax
mov dword [ebx + 8], eax
mov byte [esp + 0xc0], 2
mov eax, dword [esp + 0x50]
mov dword [ebx], 2
jmp 0x43ea05
cmp eax, 9
jne 0x43ec94
cmp dword [edi], 2
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
cmp dword [eax], 2
jne 0x43ed7b
mov ecx, dword [edi + 8]
xor edx, edx
cmp ecx, dword [eax + 8]
setl dl
jmp 0x43ebfe
cmp eax, 0xa
jne 0x43ecbf
cmp dword [edi], 2
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
cmp dword [eax], 2
jne 0x43ed7b
mov ecx, dword [edi + 8]
xor edx, edx
cmp ecx, dword [eax + 8]
setg dl
jmp 0x43ebfe
cmp eax, 7
jne 0x43ecea
cmp dword [edi], 2
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
cmp dword [eax], 2
jne 0x43ed7b
mov ecx, dword [edi + 8]
xor edx, edx
cmp ecx, dword [eax + 8]
setle dl
jmp 0x43ebfe
cmp eax, 8
jne 0x43ed11
cmp dword [edi], 2
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
cmp dword [eax], 2
jne 0x43ed7b
mov ecx, dword [edi + 8]
xor edx, edx
cmp ecx, dword [eax + 8]
setge dl
jmp 0x43ebfe
cmp eax, 0xb
jne 0x43ed3a
push 2
pop ecx
cmp dword [edi], ecx
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
cmp dword [eax], ecx
jne 0x43ed7b
cmp dword [edi + 8], 0
jne 0x43ed54
xor eax, eax
jmp 0x43ea92
xor eax, eax
inc eax
jmp 0x43ea92
cmp eax, 0xc
jne 0x43ed5c
push 2
pop ecx
cmp dword [edi], ecx
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
cmp dword [eax], ecx
jne 0x43ed7b
cmp dword [edi + 8], 0
jne 0x43ed32
cmp dword [eax + 8], 0
jne 0x43ed32
jmp 0x43ed2b
cmp eax, 0x20
jne 0x43ed7b
push 2
pop ecx
cmp dword [edi], ecx
jne 0x43ed7b
mov eax, dword [esp + 0x1c]
cmp dword [eax], ecx
jne 0x43ed7b
mov eax, dword [eax + 8]
or eax, dword [edi + 8]
jmp 0x43ea92
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
push 0x46f160
push eax
call fcn.004021e4
push 0xc8
push dword [esp + 0x20]
lea ecx, [esi + 8]
call fcn.0043d71b
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x38], 0
je 0x43e5ac
mov eax, dword [0x4872ec]
mov ecx, 0x4872ec
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x20], eax
mov byte [esp + 0xc0], 0x10
mov eax, dword [0x4872ec]
mov ecx, 0x4872ec
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x2c]
mov byte [esp + 0xc0], 0x11
mov eax, dword [eax + 0x34]
test eax, eax
je 0x43ee02
push eax
lea eax, [esp + 0x24]
push str._____s_
push eax
call fcn.004024b6
add esp, 0xc
mov eax, dword [esp + 0x28]
test eax, eax
je 0x43ee24
mov eax, dword [eax + 0x34]
test eax, eax
je 0x43ee24
push eax
lea eax, [esp + 0x18]
push str._____s_
push eax
call fcn.004024b6
add esp, 0xc
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x30]
push eax
call fcn.00440c2d
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x74]
push ecx
mov ecx, eax
mov byte [esp + 0xc8], 0x12
call fcn.0040528f
pop ecx
pop ecx
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x68]
push eax
mov ecx, edi
mov byte [esp + 0xc4], 0x13
call fcn.00440c2d
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0x64]
push ecx
mov ecx, eax
mov byte [esp + 0xc8], 0x14
call fcn.0040528f
pop ecx
pop ecx
mov edi, eax
lea eax, [esp + 0x58]
push eax
mov ecx, ebx
mov byte [esp + 0xc4], 0x15
call fcn.00440c2d
mov ecx, dword [esp + 0x2c]
mov byte [esp + 0xc0], 0x16
mov ecx, dword [ecx]
mov edx, dword [eax]
mov eax, dword [esi + 0x28]
mov edi, dword [edi]
push ecx
call fcn.0043fcc0
push eax
push edi
push edx
push 0x478f14
push dword [esp + 0x2c]
call fcn.0043f7ee
mov eax, dword [esp + 0x70]
add esp, 0x18
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x60]
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x68]
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x70]
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.004017b8
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
call fcn.004017b8
jmp 0x43e5ac