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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x478f34
mov eax, dword fs:[0]
push eax
sub esp, 0x1ac
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4eec64]
xor eax, esp
push eax
lea eax, [esp + 0x1c0]
mov dword fs:[0], eax
mov ebp, ecx
cmp byte [ebp + 0x12a], 0
jne 0x439d28
xor ebx, ebx
cmp dword [ebp + 0x154], ebx
jne 0x439d41
xor eax, eax
mov ecx, dword [esp + 0x1c0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x238], ebx
je 0x439d28
cmp dword [ebp + 0x23c], ebx
je 0x439d28
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x2c]
push ecx
lea eax, [esp + 0x1f]
mov ecx, ebp
mov byte [esp + 0x1f], bl
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
call fcn.00439c40
cmp eax, ebx
jne 0x43a5c8
cmp byte [ebp + 0x126], bl
je 0x439dab
lea edx, [esp + 0x28]
push edx
mov ecx, ebp
call fcn.00406540
jmp 0x43a5c1
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x54], eax
lea ecx, [esp + 0x38]
lea eax, [esp + 0x48]
mov dword [esp + 0x50], edx
call fcn.0040ecb0
mov ecx, dword [esp + 0x50]
sub ecx, dword [esp + 0x48]
mov eax, dword [ebp + 0x20c]
cmp eax, ecx
jne 0x439e00
mov edx, dword [esp + 0x54]
sub edx, dword [esp + 0x4c]
mov eax, dword [ebp + 0x210]
mov byte [esp + 0x27], bl
cmp eax, edx
je 0x439e05
mov byte [esp + 0x27], 1
cmp dword [ebp + 0x248], ebx
je 0x439ed7
mov eax, dword [ebp + 0x250]
cmp eax, dword [ebp + 0x24c]
je 0x439ed7
or edi, 0xffffffff
lea ecx, [esp + 0x124]
mov dword [ebp + 0x250], edi
call fcn.00406990
push eax
lea ecx, [ebp + 0x16c]
push ecx
mov dword [esp + 0x1d0], ebx
call fcn.00415e10
lea ecx, [esp + 0x124]
mov dword [esp + 0x1c8], edi
call fcn.00415e80
fldz
fcomp dword [ebp + 0x240]
fnstsw ax
test ah, 0x44
jnp 0x439eda
push str.BicubicBeginThread
lea ecx, [esp + 0x1c]
call fcn.004010d0
push ebp
lea esi, [esp + 0x5c]
call fcn.0041a170
lea ecx, [esp + 0x18]
mov dword [esp + 0x1c8], 1
call fcn.00401080
mov edx, dword [ebp]
mov edx, dword [edx + 0x58]
mov eax, esi
push eax
mov ecx, ebp
call edx
mov eax, dword [ebp + 0x24c]
mov dword [ebp + 0x6dc], eax
mov eax, dword [ebp + 0x698]
cmp eax, ebx
je 0x439ec5
push edi
push eax
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
lea esi, [esp + 0x58]
mov dword [esp + 0x1c8], edi
call fcn.004061a0
jmp 0x439eda
or edi, 0xffffffff
fldz
fcomp dword [ebp + 0x240]
fnstsw ax
test ah, 0x44
jnp 0x43a024
mov eax, dword [ebp + 0x6e0]
cmp eax, dword [ebp + 0x24c]
jne 0x43a024
lea ecx, [ebp + 0x68c]
lea esi, [esp + 0x1c]
call fcn.0041a350
mov dword [esp + 0x1c8], 2
cmp dword [ebp + 0x6c0], ebx
je 0x43a014
push str.BicubicEndThread
lea ecx, [esp + 0x1c]
call fcn.004010d0
push ebp
lea esi, [esp + 0x90]
call fcn.0041a170
lea ecx, [esp + 0x18]
mov byte [esp + 0x1c8], 3
call fcn.00401080
mov edx, dword [ebp]
mov edx, dword [edx + 0x58]
mov eax, esi
push eax
mov ecx, ebp
call edx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], 0x313
mov dword [esp + 0x78], str.BicubicEndThread
push str.Building_MIPMap..._n
mov byte [esp + 0x1cc], 4
call fcn.00402b20
sub esp, 0xc
mov eax, esp
mov ecx, edi
mov dword [eax], ecx
mov edx, edi
mov dword [eax + 4], edx
mov dword [eax + 8], edi
or ebx, 0xffffffff
mov dword [eax + 0xc], ebx
lea eax, [ebp + 0x6b8]
push eax
lea esi, [ebp + 0x16c]
push esi
call fcn.00416000
mov eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0x24c]
mov dword [ebp + 0x238], eax
mov esi, dword [esi + 0x94]
lea eax, [ebp + 0x68c]
push eax
mov dword [ebp + 0x23c], esi
mov dword [ebp + 0x250], ecx
call fcn.00439880
or dword [ebp + 8], 7
lea esi, [esp + 0x58]
mov byte [esp + 0x1c8], 3
call fcn.004061a0
lea esi, [esp + 0x8c]
mov byte [esp + 0x1c8], 2
call fcn.004061a0
xor ebx, ebx
or edi, 0xffffffff
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c8], edi
call fcn.00402220
fldz
fcomp dword [ebp + 0x240]
fnstsw ax
test ah, 0x44
jnp 0x43a03f
cmp dword [ebp + 0x194], ebx
ja 0x43a3c7
cmp byte [ebp + 0x231], 0
jne 0x43a053
cmp byte [esp + 0x27], 0
je 0x43a3c7
mov byte [ebp + 0x231], 0
cmp dword [ebp + 0x678], ebx
je 0x43a29a
cmp byte [esp + 0x17], 0
je 0x43a084
lea edx, [ebp + 0x204]
lea eax, [ebp + 0x668]
push edx
call fcn.0040f310
jmp 0x43a3c3
push ebx
lea eax, [esp + 0x4c]
lea edi, [ebp + 0x204]
push eax
mov ecx, edi
call fcn.0040f750
cmp eax, ebx
jne 0x43a5c8
cmp byte [ebp + 0x232], 0
je 0x43a194
cmp byte [ebp + 0x233], 0
jne 0x43a194
mov eax, dword [esp + 0x30]
sub eax, dword [esp + 0x28]
mov ecx, dword [ebp + 0x670]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
test ecx, ecx
jge 0x43a0e1
fadd dword [0x490020]
fdivp st(1)
mov ecx, dword [esp + 0x34]
sub ecx, dword [esp + 0x2c]
mov eax, dword [ebp + 0x674]
mov dword [esp + 0x18], ecx
fstp dword [esp + 0x1c]
fild dword [esp + 0x18]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
test eax, eax
jge 0x43a10f
fadd dword [0x490020]
fdivp st(1)
lea ecx, [esp + 0xb4]
push ecx
fstp dword [esp + 0x1c]
call fcn.00431690
lea edx, [esp + 0x7c]
push edx
mov ecx, edi
mov dword [esp + 0x1cc], 5
call fcn.00406500
fld dword [esp + 0x18]
sub esp, 0x10
fstp dword [esp + 0xc]
lea eax, [esp + 0x8c]
fld dword [esp + 0x2c]
lea ecx, [ebp + 0x668]
fstp dword [esp + 8]
fild dword [esp + 0x3c]
fstp dword [esp + 4]
fild dword [esp + 0x38]
fstp dword [esp]
push eax
push ecx
push edi
lea ecx, [esp + 0xd0]
call fcn.0042ef00
lea edx, [esp + 0xb4]
push edx
mov dword [esp + 0x1cc], 0xffffffff
call fcn.00431710
jmp 0x43a275
lea eax, [esp + 0x8c]
call fcn.004118d0
fild dword [ebp + 0x210]
mov eax, dword [ebp + 0x210]
test eax, eax
jge 0x43a1b6
fadd dword [0x490020]
mov ecx, dword [ebp + 0x674]
fild dword [ebp + 0x674]
test ecx, ecx
jge 0x43a1cc
fadd dword [0x490020]
fdivp st(1)
mov edx, dword [ebp + 0x20c]
sub esp, 8
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fild dword [ebp + 0x20c]
test edx, edx
jge 0x43a1f3
fadd dword [0x490020]
mov eax, dword [ebp + 0x670]
fild dword [ebp + 0x670]
test eax, eax
jge 0x43a209
fadd dword [0x490020]
fdivp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp]
call fcn.00404670
fdivr qword [0x48b4b0]
add esp, 4
lea esi, [esp + 0x90]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.00439830
lea ecx, [esp + 0x7c]
push ecx
mov ecx, edi
call fcn.00406500
cmp byte [ebp + 0x233], 0
push pe_nt_image_headers32
sete dl
movzx eax, dl
push ebx
push eax
mov ecx, esi
push ecx
lea edx, [ebp + 0x668]
push edx
push edi
lea edi, [esp + 0x94]
call fcn.0043b960
add esp, 0x18
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
jmp 0x43a3c3
cmp dword [ebp + 0x258], ebx
je 0x43a2f0
mov edx, dword [esp + 0x44]
sub edx, dword [esp + 0x3c]
mov eax, dword [ebp + 0x254]
mov ecx, dword [ebp + 0x258]
push edx
mov edx, dword [esp + 0x44]
sub edx, dword [esp + 0x3c]
push edx
lea edx, [ebp + 0x204]
push edx
push eax
push ecx
call fcn.0043d910
add esp, 0x14
cmp eax, ebx
je 0x43a3c3
mov ecx, dword [esp + 0x1c0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea esi, [ebp + 0x25c]
mov ecx, esi
call fcn.004196d0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43a300
sub eax, edx
je 0x43a34d
mov eax, dword [esp + 0x44]
sub eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
sub ecx, dword [esp + 0x38]
push eax
push ecx
lea edx, [ebp + 0x204]
push edx
mov ecx, esi
call fcn.0043d1a0
add esp, 0xc
cmp eax, ebx
je 0x43a3c3
mov ecx, dword [esp + 0x1c0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x248], ebx
je 0x439d28
cmp byte [esp + 0x17], 0
lea eax, [ebp + 0x204]
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], ebx
mov ecx, dword [ebp + 0x248]
mov edx, dword [ecx]
mov edx, dword [edx]
push 1
je 0x43a39f
push ebx
push ebx
push eax
mov eax, dword [ebp + 0x24c]
push eax
call edx
cmp eax, ebx
je 0x43a3c3
mov ecx, dword [esp + 0x1c0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0x48]
sub esi, dword [esp + 0x40]
push esi
mov esi, dword [esp + 0x48]
sub esi, dword [esp + 0x40]
push esi
push eax
mov eax, dword [ebp + 0x24c]
push eax
call edx
cmp eax, ebx
jne 0x43a5c8
or dword [ebp + 8], 7
fldz
fcomp dword [ebp + 0x240]
fnstsw ax
test ah, 0x44
jnp 0x43a3de
cmp dword [ebp + 0x238], ebx
jne 0x43a3ea
cmp dword [ebp + 0x194], ebx
jbe 0x43a59d
cmp byte [esp + 0x17], 0
fld dword [0x490080]
je 0x43a426
fstp st(0)
sub esp, 8
fld dword [ebp + 0x240]
fadd st(0), st(0)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [0x4900b8]
fstp dword [esp]
call fcn.0041ffd0
add esp, 8
jmp 0x43a55c
cmp dword [ebp + 0x194], ebx
jbe 0x43a4cc
fcomp dword [ebp + 0x240]
fnstsw ax
test ah, 0x41
jne 0x43a4a4
mov eax, dword [ebp + 0x1fc]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x30]
sub eax, dword [esp + 0x28]
sub esp, 8
mov dword [esp + 0x24], eax
fild dword [esp + 0x24]
fidiv dword [esp + 0x58]
fstp dword [esp + 0x20]
fld dword [ebp + 0x240]
fadd st(0), st(0)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [0x4900b8]
fstp dword [esp]
call fcn.0041ffd0
fld qword [0x48b4b0]
add esp, 8
fsub st(1), st(0)
fld dword [esp + 0x18]
fld st(0)
fsubp st(2)
fxch st(2)
fmulp st(1)
faddp st(1)
jmp 0x43a55c
fld dword [ebp + 0x240]
fsub qword [0x490038]
fmul qword [0x4900c0]
fld qword [0x4900d8]
fxch st(1)
call fcn.0045c2b0
fstp dword [esp + 0x18]
jmp 0x43a560
mov ecx, dword [ebp + 0x238]
fild dword [ebp + 0x238]
test ecx, ecx
jge 0x43a4e2
fadd dword [0x490020]
mov eax, dword [esp + 0x30]
sub eax, dword [esp + 0x28]
mov dword [esp + 0x1c], eax
fidiv dword [esp + 0x1c]
fstp dword [esp + 0x18]
fcomp dword [ebp + 0x240]
fnstsw ax
fld dword [ebp + 0x240]
test ah, 0x41
jne 0x43a53f
fadd st(0), st(0)
sub esp, 8
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [0x4900b8]
fstp dword [esp]
call fcn.0041ffd0
fld qword [0x48b4b0]
add esp, 8
fsub st(1), st(0)
fld dword [esp + 0x18]
fsub st(1)
fmulp st(2)
faddp st(1)
jmp 0x43a55c
fsub qword [0x490038]
fmul qword [0x4900c0]
fld qword [0x4900d8]
fxch st(1)
call fcn.0045c2b0
fmul dword [esp + 0x18]
fstp dword [esp + 0x18]
cmp dword [ebp + 0x194], ebx
jbe 0x43a585
fld dword [0x490080]
fcomp dword [ebp + 0x240]
fnstsw ax
test ah, 0x44
jp 0x43a585
cmp byte [esp + 0x17], 0
jne 0x43a585
push ebx
jmp 0x43a587
push 1
mov ecx, ebp
call fcn.00414250
cmp byte [ebp + 0x230], 0
jne 0x43a5b9
fld dword [esp + 0x18]
jmp 0x43a5a8
cmp byte [ebp + 0x230], 0
jne 0x43a5b9
fld1
sub esp, 8
fst dword [esp + 4]
mov ecx, ebp
fstp dword [esp]
call fcn.00412fb0
push ebx
mov ecx, ebp
call fcn.004065e0
mov ecx, ebp
call fcn.00413460
mov ecx, dword [esp + 0x1c0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret