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

Disassembly:
sub esp, 0x4c
push ebx
push ebp
push esi
lea eax, [esp + 0x40]
push edi
push eax
mov dword [esp + 0x20], 0x64
call fcn.004565a0
lea ecx, [esp + 0x3c]
add esp, 4
push ecx
call fcn.004565a0
lea edx, [esp + 0x24]
add esp, 4
push edx
call fcn.004565a0
lea eax, [esp + 0x30]
add esp, 4
push eax
call fcn.004565a0
lea ecx, [esp + 0x54]
add esp, 4
push ecx
call fcn.004565a0
mov edx, dword [esp + 0x64]
add esp, 4
add edx, 0xec8
push edx
lea eax, [esp + 0x54]
push eax
call fcn.00456880
mov ebp, 2
add esp, 8
mov dword [esp + 0x18], ebp
cmp ebp, 4
je 0x40b337
cmp ebp, 9
je 0x40b337
cmp ebp, 0x10
je 0x40b337
cmp ebp, 0x19
je 0x40b337
cmp ebp, 0x24
je 0x40b337
cmp ebp, 0x31
je 0x40b337
cmp ebp, 0x40
je 0x40b337
cmp ebp, 0x51
je 0x40b337
cmp ebp, 8
je 0x40b337
cmp ebp, 0x1b
je 0x40b337
cmp ebp, 0x20
je 0x40b337
lea ecx, [esp + 0x20]
push ebp
push ecx
call fcn.00456980
push 0x1f
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x54]
push eax
call fcn.00459240
fild dword [esp + 0x2c]
add esp, 0x14
call fcn.004bdd80
fdivr qword [0x5b4740]
fadd qword [0x5b43c8]
call fcn.004bd160
cmp dword [0x5d5f9c], 1
mov esi, eax
mov dword [esp + 0x1c], esi
jle 0x40b20b
push esi
push ebp
push str.nfs:_checking__dx____1_for_32___x____d_n
call fcn.004b7f6d
add esp, 0xc
mov ebx, 0x20
mov dword [esp + 0x14], ebx
cmp esi, ebx
jle 0x40b337
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x48]
push edx
mov eax, edx
push eax
call fcn.00458530
add esp, 0xc
push 0x40000000
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x34]
push edx
call fcn.00456ad0
add esp, 0xc
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0x30]
push ecx
mov edx, ecx
push edx
call fcn.00458470
add esp, 0xc
lea eax, [esp + 0x2c]
push 2
push eax
call fcn.00457f70
add esp, 8
cmp eax, 0x20
ja 0x40b328
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
neg esi
sbb esi, esi
and esi, dword [ecx]
cmp esi, 0x40000000
jbe 0x40b2ab
sub esi, 0x40000000
push esi
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x34]
push ecx
mov dword [esp + 0x24], 0
call fcn.00458940
jmp 0x40b2cc
mov edx, 0x40000000
sub edx, esi
mov esi, edx
push esi
lea edx, [esp + 0x54]
push edx
lea eax, [esp + 0x34]
push eax
mov dword [esp + 0x24], 1
call fcn.00456ad0
add esp, 0xc
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x30]
push edx
mov eax, edx
push eax
lea ecx, [esp + 0x44]
push ecx
call fcn.00456b90
lea edx, [esp + 0x3c]
push 0
push edx
call fcn.004565d0
add esp, 0x18
test eax, eax
jne 0x40b328
lea eax, [esp + 0x38]
push 2
push eax
call fcn.00457f70
add esp, 8
cmp eax, 0x20
jae 0x40b328
mov edi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
neg edi
sbb edi, edi
and edi, dword [ecx]
mov eax, edi
cdq
idiv ebp
test edx, edx
jne 0x40b449
inc ebx
mov dword [esp + 0x14], ebx
cmp ebx, dword [esp + 0x1c]
jl 0x40b21c
inc ebp
mov dword [esp + 0x18], ebp
cmp ebp, 0x64
jl 0x40b151
mov ebx, dword [esp + 0x1c]
mov edi, 1
cmp ebx, edi
jle 0x40b7a1
cmp dword [0x5d5f9c], edi
jle 0x40b36c
push ebx
push str.nfs:_checking_x_d____1_n
call fcn.004b7f6d
add esp, 8
push edi
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00456ad0
add esp, 0xc
push ebx
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x28]
push eax
call fcn.00459100
add esp, 0xc
push ebx
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x4c]
push edx
call fcn.00459240
add esp, 0xc
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x48]
push ecx
call fcn.00456920
add esp, 8
test eax, eax
jne 0x40b3d3
lea edx, [esp + 0x20]
push 2
push edx
call fcn.00457f70
add esp, 8
cmp eax, 0x20
jb 0x40b5f6
push edi
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00458940
add esp, 0xc
push ebx
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x28]
push eax
call fcn.00459100
add esp, 0xc
push ebx
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x4c]
push edx
call fcn.00459240
add esp, 0xc
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x48]
push ecx
call fcn.00456920
add esp, 8
test eax, eax
jne 0x40b43a
lea edx, [esp + 0x20]
push 2
push edx
call fcn.00457f70
add esp, 8
cmp eax, 0x20
jb 0x40b6d1
sub ebx, edi
cmp ebx, edi
jg 0x40b356
jmp 0x40b7a1
cmp edi, 1
jle 0x40b4d8
cmp dword [esp + 0x18], 0
jne 0x40b49a
cmp dword [0x5d5f9c], 0
jle 0x40b473
push esi
push ebx
push ebp
push edi
push str.nfs:_input_divides__d_d_d___d_n
call fcn.004b7f6d
add esp, 0x14
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x60]
push esi
push edx
push ebp
push edi
push str.nfs:_input_divides__d_d_d___d_n
add ebx, 0x24
push 0x51a9e0
push ebx
call fcn.004439f0
add esp, 0x1c
jmp 0x40b540
cmp dword [0x5d5f9c], 0
jle 0x40b4b4
push esi
push ebx
push ebp
push edi
push str.nfs:_input_divides__d_d_d____d_n
call fcn.004b7f6d
add esp, 0x14
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x60]
push esi
push eax
push ebp
push edi
push str.nfs:_input_divides__d_d_d____d_n
add ebx, 0x24
push 0x51a9e0
push ebx
call fcn.004439f0
add esp, 0x1c
jmp 0x40b540
cmp dword [esp + 0x18], 0
jne 0x40b506
cmp dword [0x5d5f9c], 0
jle 0x40b4f8
push esi
push ebx
push ebp
push str.nfs:_input_divides__d_d___d_n
call fcn.004b7f6d
add esp, 0x10
mov ecx, dword [esp + 0x14]
push esi
push ecx
push ebp
push str.nfs:_input_divides__d_d___d_n
jmp 0x40b52b
cmp dword [0x5d5f9c], 0
jle 0x40b51f
push esi
push ebx
push ebp
push str.nfs:_input_divides__d_d____d_n
call fcn.004b7f6d
add esp, 0x10
mov edx, dword [esp + 0x14]
push esi
push edx
push ebp
push str.nfs:_input_divides__d_d____d_n
mov ebx, dword [esp + 0x70]
push 0x51a9e0
add ebx, 0x24
push ebx
call fcn.004439f0
add esp, 0x18
mov ecx, 1
cmp edi, ecx
jne 0x40b571
cmp esi, ecx
jne 0x40b571
cmp dword [esp + 0x18], ecx
jne 0x40b571
mov eax, dword [esp + 0x14]
mov edx, eax
and edx, 0x80000001
jns 0x40b566
dec edx
or edx, 0xfffffffe
inc edx
jne 0x40b571
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
cmp dword [esp + 0x18], 0
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x14]
mov dword [eax + 0x30], ecx
mov dword [eax + 0x28], edi
mov dword [eax + 0x18], ebp
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
je 0x40b591
neg esi
mov edi, dword [esp + 0x60]
push ecx
add edi, 0xee8
push edi
mov dword [eax + 0x2c], esi
call fcn.004565d0
add esp, 8
test eax, eax
jle 0x40b5e7
push 0x51a9e0
push ebx
call fcn.004b80e6
mov esi, eax
push str.nfs:_using_supplied_cofactor:
push esi
call fcn.00443960
push edi
push 0x5ad6dc
push esi
call fcn.00457f00
add esp, 0x1c
push esi
call fcn.004b8276
mov eax, dword [esp + 0x68]
add esp, 4
push edi
push eax
jmp 0x40b799
mov edx, dword [esp + 0x64]
lea ecx, [esp + 0x50]
push ecx
push edx
jmp 0x40b799
cmp dword [0x5d5f9c], 0
jle 0x40b61e
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
neg ecx
sbb ecx, ecx
push ebx
and ecx, eax
push ecx
push str.nfs:_input_divides__d_d___1_n
call fcn.004b7f6d
add esp, 0xc
mov ebp, dword [esp + 0x60]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
add ebp, 0x24
neg ecx
sbb ecx, ecx
and ecx, dword [edx]
push ebx
push ecx
push str.nfs:_input_divides__d_d___1_n
push 0x51a9e0
push ebp
call fcn.004439f0
mov esi, dword [esp + 0x78]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
add esp, 0x14
neg ecx
sbb ecx, ecx
mov dword [esi + 0x30], edi
mov dword [esi + 0x28], edi
and ecx, dword [edx]
mov dword [esi + 0x20], ebx
mov dword [esi + 0x18], ecx
mov dword [esi + 0x1c], edi
mov dword [esi + 0x2c], 0xffffffff
test bl, 1
jne 0x40b67f
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
mov dword [esi + 0x20], eax
mov ebx, dword [esp + 0x60]
add ebx, 0xee8
push edi
push ebx
call fcn.004565d0
add esp, 8
test eax, eax
jle 0x40b793
push 0x51a9e0
push ebp
call fcn.004b80e6
mov edi, eax
push str.nfs:_using_supplied_cofactor:
push edi
call fcn.00443960
push ebx
push 0x5ad6dc
push edi
call fcn.00457f00
add esp, 0x1c
push edi
call fcn.004b8276
add esp, 4
push ebx
jmp 0x40b798
cmp dword [0x5d5f9c], 0
jle 0x40b6f9
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
neg ecx
sbb ecx, ecx
push ebx
and ecx, eax
push ecx
push str.nfs:_input_divides__d_d__1_n
call fcn.004b7f6d
add esp, 0xc
mov ebp, dword [esp + 0x60]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
add ebp, 0x24
neg ecx
sbb ecx, ecx
and ecx, dword [edx]
push ebx
push ecx
push str.nfs:_input_divides__d_d__1_n
push 0x51a9e0
push ebp
call fcn.004439f0
mov esi, dword [esp + 0x78]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
add esp, 0x14
neg ecx
mov dword [esi + 0x30], edi
mov dword [esi + 0x28], edi
sbb ecx, ecx
and ecx, dword [edx]
mov dword [esi + 0x1c], edi
mov dword [esi + 0x2c], edi
mov edi, dword [esp + 0x60]
add edi, 0xee8
push 1
push edi
mov dword [esi + 0x18], ecx
mov dword [esi + 0x20], ebx
call fcn.004565d0
add esp, 8
test eax, eax
jle 0x40b793
push 0x51a9e0
push ebp
call fcn.004b80e6
mov ebx, eax
push str.nfs:_using_supplied_cofactor:
push ebx
call fcn.00443960
push edi
push 0x5ad6dc
push ebx
call fcn.00457f00
add esp, 0x1c
push ebx
call fcn.004b8276
add esp, 4
push edi
jmp 0x40b798
lea edx, [esp + 0x50]
push edx
push esi
call fcn.00456880
add esp, 8
lea eax, [esp + 0x44]
push eax
call fcn.00456900
lea ecx, [esp + 0x3c]
add esp, 4
push ecx
call fcn.00456900
lea edx, [esp + 0x24]
add esp, 4
push edx
call fcn.00456900
lea eax, [esp + 0x30]
add esp, 4
push eax
call fcn.00456900
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x4c
ret