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

Disassembly:
sub esp, 0x30
cmp byte [esp + 0x40], 0
push ebx
push ebp
mov ebp, dword [esp + 0x44]
push esi
push edi
mov edi, dword [esp + 0x44]
mov dword [esp + 0x38], 0
je 0x42004c
push 0x134
call fcn.004237b0
mov ecx, eax
add esp, 4
mov eax, dword [edi + 0x10]
push 0
mov eax, dword [eax + 0x14]
push 0
push edi
test dword [eax + 0xa4], ecx
je 0x41ff0c
call fcn.004235f0
mov ebx, dword [esp + 0x54]
push eax
push ebx
push 0x134
push edi
call fcn.00421e10
jmp 0x41ff22
call fcn.004235f0
mov ebx, dword [esp + 0x54]
push eax
push ebx
push 0x134
push edi
call fcn.0041d850
movsd xmm0, qword [0x512f10]
add esp, 0x1c
mov dword [esp + 0x44], eax
push ebp
sub esp, 8
movsd qword [esp], xmm0
call fcn.00406d00
push ebp
push 1
push dword [edi + 0x10]
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x41ff5f
xor ebp, ebp
jmp 0x41ff7a
mov eax, dword [esp + 0x38]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x34]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
lea ebp, [esi + 0x18]
mov esi, dword [esp + 0x4c]
movsd xmm0, qword [0x533e98]
push esi
sub esp, 8
movsd qword [esp], xmm0
call fcn.00406d00
push esi
push 1
push dword [edi + 0x10]
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x41ffcb
mov eax, dword [esp + 0x38]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x34]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push ebp
push esi
push dword [esp + 0x4c]
push 0x71
push edi
call fcn.0041d8c0
push 0x121
mov dword [esp + 0x50], eax
call fcn.004237b0
mov ecx, dword [edi + 0x10]
add esp, 0x18
mov ecx, dword [ecx + 0x14]
push ebx
test dword [ecx + 0xa4], eax
je 0x420036
push 0x1b7
push edi
call fcn.0041d800
push 0
push 0
push eax
push edi
call fcn.0041b320
push ebx
push 0x14a
push edi
mov esi, eax
call fcn.0041d800
push ebx
push eax
push esi
push 0x71
push edi
call fcn.0041d8c0
mov ebp, dword [esp + 0x88]
add esp, 0x3c
mov esi, eax
jmp 0x420050
push 0x121
push edi
call fcn.0041d800
mov ebp, dword [esp + 0x58]
add esp, 0xc
mov esi, eax
jmp 0x420050
mov esi, dword [esp + 0x48]
push 0x198
call fcn.004237b0
mov ecx, dword [edi + 0x10]
add esp, 4
mov ecx, dword [ecx + 0x14]
push esi
test dword [ecx + 0xa4], eax
je 0x420077
push edi
call fcn.00423320
add esp, 8
jmp 0x420085
push 0x198
push edi
call fcn.0041d800
add esp, 0xc
mov dword [esp + 0x14], eax
cmp ebp, 0x10
je 0x4200a0
cmp ebp, 0x20
mov eax, 0x34
mov ebp, 0x17
cmovne ebp, eax
jmp 0x4200a5
mov ebp, 0xa
push 0x20
push 0
push 0
mov dword [esp + 0x28], ebp
call fcn.0040fcf0
push 0x20
push 1
push dword [edi + 0x10]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
call fcn.00409bc0
mov ebx, eax
add esp, 0x18
test ebx, ebx
je 0x4200ec
mov eax, dword [esp + 0x20]
mov dword [ebx + 0x30], eax
mov eax, dword [esp + 0x24]
push ebx
push edi
mov dword [ebx + 0x34], eax
call fcn.0041dbe0
add esp, 8
add ebx, 0x18
mov eax, ebp
push 0
neg eax
push eax
push dword [esp + 0x1c]
push edi
call fcn.00410890
push ebx
push eax
push 0x13c
push edi
call fcn.0041d850
mov ebx, eax
push 0x1c5
mov dword [esp + 0x3c], ebx
call fcn.004237b0
mov ecx, dword [edi + 0x10]
add esp, 0x24
mov ecx, dword [ecx + 0x14]
push ebx
push esi
test dword [ecx + 0xa4], eax
je 0x420138
push edi
call fcn.00423390
add esp, 0xc
jmp 0x420146
push 0x1c5
push edi
call fcn.0041d850
add esp, 0x10
mov ebx, eax
cmp ebp, 0x20
jae 0x420187
push 0x189
call fcn.004237b0
mov ecx, dword [edi + 0x10]
add esp, 4
mov ecx, dword [ecx + 0x14]
test dword [ecx + 0xa4], eax
je 0x420170
push ebx
push 0x1b6
jmp 0x42017c
cmp byte [ebx + 0x11], 0x20
je 0x420187
push ebx
push 0x189
push edi
call fcn.0041d800
mov ebx, eax
add esp, 0xc
push 0x152
call fcn.004237b0
mov ebp, dword [edi + 0x10]
push 0x40
push 0
push 1
mov dword [esp + 0x40], eax
call fcn.0040fcf0
mov ecx, dword [esp + 0x40]
add esp, 0x10
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x10], edx
push 0x40
push 1
push ebp
test dword [eax + 0xa4], ecx
je 0x42020b
call fcn.00409bc0
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x4201e0
push dword [esp + 0x18]
push ebp
push edi
call fcn.00422260
add esp, 0xc
jmp 0x420247
mov eax, dword [esp + 0x44]
mov dword [ebp + 0x30], eax
mov eax, dword [esp + 0x10]
push ebp
push edi
mov dword [ebp + 0x34], eax
call fcn.0041dbe0
add esp, 8
add ebp, 0x18
push dword [esp + 0x18]
push ebp
push edi
call fcn.00422260
add esp, 0xc
jmp 0x420247
call fcn.00409bc0
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x420234
mov eax, dword [esp + 0x44]
mov dword [ebp + 0x30], eax
mov eax, dword [esp + 0x10]
push ebp
push edi
mov dword [ebp + 0x34], eax
call fcn.0041dbe0
add esp, 8
add ebp, 0x18
push dword [esp + 0x18]
push ebp
push 0x152
push edi
call fcn.0041d850
add esp, 0x10
push 0x155
mov ebp, eax
call fcn.004237b0
mov edx, dword [edi + 0x10]
add esp, 4
mov ecx, dword [edx + 0x14]
push 0x40
push 1
push edx
test dword [ecx + 0xa4], eax
je 0x4202b2
call fcn.00409bc0
add esp, 0xc
mov dword [esp + 0x34], eax
test eax, eax
jne 0x420286
push eax
push ebp
push edi
call fcn.00422530
add esp, 0xc
jmp 0x4202f1
mov ecx, dword [esp + 0x44]
mov dword [eax + 0x30], ecx
mov ecx, dword [esp + 0x10]
push eax
push edi
mov dword [eax + 0x34], ecx
call fcn.0041dbe0
mov eax, dword [esp + 0x3c]
add esp, 8
add eax, 0x18
push eax
push ebp
push edi
call fcn.00422530
add esp, 0xc
jmp 0x4202f1
call fcn.00409bc0
add esp, 0xc
mov dword [esp + 0x34], eax
test eax, eax
je 0x4202e1
mov ecx, dword [esp + 0x44]
mov dword [eax + 0x30], ecx
mov ecx, dword [esp + 0x10]
push eax
push edi
mov dword [eax + 0x34], ecx
call fcn.0041dbe0
mov eax, dword [esp + 0x3c]
add esp, 8
add eax, 0x18
push eax
push ebp
push 0x155
push edi
call fcn.0041d850
add esp, 0x10
push 0x153
mov dword [esp + 0x48], eax
call fcn.004237b0
push 0x20
push 0
push 1
mov dword [esp + 0x44], eax
call fcn.0040fcf0
mov ecx, dword [edi + 0x10]
add esp, 0x10
mov dword [esp + 0x10], eax
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x34]
mov eax, dword [ecx + 0x14]
push 0x20
push 1
push ecx
test dword [eax + 0xa4], edx
je 0x420379
call fcn.00409bc0
add esp, 0xc
mov dword [esp + 0x2c], eax
test eax, eax
jne 0x42034d
push eax
push ebp
push edi
call fcn.004223c0
add esp, 0xc
jmp 0x4203b8
mov ecx, dword [esp + 0x10]
mov dword [eax + 0x30], ecx
mov ecx, dword [esp + 0x28]
push eax
push edi
mov dword [eax + 0x34], ecx
call fcn.0041dbe0
mov eax, dword [esp + 0x34]
add esp, 8
add eax, 0x18
push eax
push ebp
push edi
call fcn.004223c0
add esp, 0xc
jmp 0x4203b8
call fcn.00409bc0
add esp, 0xc
mov dword [esp + 0x2c], eax
test eax, eax
je 0x4203a8
mov ecx, dword [esp + 0x10]
mov dword [eax + 0x30], ecx
mov ecx, dword [esp + 0x28]
push eax
push edi
mov dword [eax + 0x34], ecx
call fcn.0041dbe0
mov eax, dword [esp + 0x34]
add esp, 8
add eax, 0x18
push eax
push ebp
push 0x153
push edi
call fcn.0041d850
add esp, 0x10
push 0x125
mov dword [esp + 0x14], eax
call fcn.004237b0
mov ecx, dword [edi + 0x10]
add esp, 4
mov dword [esp + 0x2c], eax
mov ecx, dword [ecx + 0x14]
push dword [esp + 0x44]
push esi
test dword [ecx + 0xa4], eax
je 0x4203eb
push edi
call fcn.00420db0
add esp, 0xc
jmp 0x4203f9
push 0x125
push edi
call fcn.0041d850
add esp, 0x10
push 0x129
mov dword [esp + 0x48], eax
call fcn.004237b0
mov ecx, dword [edi + 0x10]
add esp, 4
push dword [esp + 0x10]
mov ecx, dword [ecx + 0x14]
push dword [esp + 0x48]
push 0x129
push edi
test dword [ecx + 0xa4], eax
je 0x42042d
call fcn.00421e10
jmp 0x420432
call fcn.0041d850
add esp, 0x10
mov dword [esp + 0x28], eax
push 0
push 0
push dword [esp + 0x20]
push edi
call fcn.00423640
push eax
push dword [esp + 0x3c]
push 0x125
push edi
call fcn.0041d850
mov ecx, dword [edi + 0x10]
push 0x146
mov dword [esp + 0x60], eax
mov ecx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0xa4]
mov dword [esp + 0x4c], ecx
call fcn.004237b0
mov ecx, dword [esp + 0x4c]
add esp, 0x24
push ebp
push esi
test ecx, eax
je 0x42050b
test dword [esp + 0x34], ecx
je 0x420497
push edi
call fcn.00420db0
add esp, 0xc
jmp 0x4204a5
push 0x125
push edi
call fcn.0041d850
add esp, 0x10
push 0x40
push 0
push 0
mov ebp, eax
call fcn.0040fcf0
push 0x40
push 1
push dword [edi + 0x10]
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x4204e1
push ebp
push esi
push 0x146
push edi
call fcn.00421e10
jmp 0x42057c
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x28]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push ebp
push esi
push 0x146
push edi
call fcn.00421e10
jmp 0x42057c
test dword [esp + 0x34], ecx
je 0x42051c
push edi
call fcn.00420db0
add esp, 0xc
jmp 0x42052a
push 0x125
push edi
call fcn.0041d850
add esp, 0x10
push 0x40
push 0
push 0
mov ebp, eax
call fcn.0040fcf0
push 0x40
push 1
push dword [edi + 0x10]
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x42056f
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x28]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push ebp
push esi
push 0x146
push edi
call fcn.0041d850
add esp, 0x10
mov ebp, eax
push 0x134
call fcn.004237b0
mov ecx, dword [edi + 0x10]
add esp, 4
push dword [esp + 0x44]
mov ecx, dword [ecx + 0x14]
push dword [esp + 0x14]
push 0x134
push edi
test dword [ecx + 0xa4], eax
je 0x4205b1
call fcn.00421e10
jmp 0x4205b6
call fcn.0041d850
add esp, 0x10
mov esi, eax
push ebp
push dword [esp + 0x40]
push 0x125
push edi
call fcn.0041d850
push eax
push esi
push 0x14f
push edi
call fcn.0041d850
mov esi, dword [edi + 0x10]
add esp, 0x20
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x44], eax
mov ecx, dword [esi + 0x10c]
cmp edx, 0x10
jne 0x420660
test ecx, 0x40000
je 0x420684
push dword [esp + 0x18]
push 0x183
push edi
call fcn.0041d800
push eax
push 0xcf
push edi
call fcn.0041d800
push ebx
push 0x183
push edi
mov esi, eax
call fcn.0041d800
mov edx, 0xed
mov ebp, eax
add esp, 0x24
push esi
push ebp
mov ecx, edi
push edx
push ecx
call fcn.0041d850
add esp, 0x10
cmp byte [esp + 0x50], 0
je 0x420658
push dword [esp + 0x38]
push eax
push 0xed
push edi
call fcn.0041d850
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
cmp edx, 0x20
jne 0x420673
test ecx, 0x80000
jne 0x4209b8
jmp 0x420684
cmp edx, 0x40
jne 0x420684
test ecx, 0x100000
jne 0x42073b
cmp dword [esp + 0x1c], 0x20
jb 0x420713
mov eax, dword [esi + 0x14]
push 0x122
mov esi, dword [eax + 0xa4]
mov ebp, esi
and ebp, 0x800000
call fcn.004237b0
add esp, 4
push dword [esp + 0x44]
test esi, eax
je 0x4206e7
test ebp, ebp
je 0x4206cf
push edi
call fcn.004209e0
add esp, 8
push eax
push ebx
push edi
call fcn.00420d00
add esp, 0xc
jmp 0x42072c
push 0x24
push edi
call fcn.0041d800
add esp, 0xc
push eax
push ebx
push edi
call fcn.00420d00
add esp, 0xc
jmp 0x42072c
test ebp, ebp
je 0x4206f6
push edi
call fcn.004209e0
add esp, 8
jmp 0x420701
push 0x24
push edi
call fcn.0041d800
add esp, 0xc
push eax
push ebx
push 0x122
push edi
call fcn.0041d850
add esp, 0x10
jmp 0x42072c
push eax
push 0x23
push edi
call fcn.0041d800
push eax
push ebx
push 0x122
push edi
call fcn.0041d850
add esp, 0x1c
mov esi, dword [esp + 0x4c]
mov ebx, eax
cmp esi, 0x40
jne 0x4209af
push 0x20
push 1
push dword [edi + 0x10]
call fcn.00409bc0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x420754
xor ebp, ebp
jmp 0x42076f
mov eax, dword [esp + 0x20]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x24]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
lea ebp, [esi + 0x18]
mov eax, dword [esp + 0x14]
movzx esi, byte [eax + 0x11]
push esi
push 0
push dword [esp + 0x24]
call fcn.0040fcf0
push esi
push 1
push dword [edi + 0x10]
mov dword [esp + 0x64], eax
mov dword [esp + 0x5c], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x4207ba
mov eax, dword [esp + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x44]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push dword [esp + 0x14]
push esi
push 0x155
push edi
call fcn.0041d850
push ebp
push eax
push 0x13c
push edi
call fcn.0041d850
mov ecx, dword [edi + 0x10]
add esp, 0x20
mov edx, dword [esp + 0x30]
mov ecx, dword [ecx + 0x14]
push eax
push ebx
test dword [ecx + 0xa4], edx
je 0x4207f9
push edi
call fcn.00422260
add esp, 0xc
jmp 0x420807
push 0x152
push edi
call fcn.0041d850
add esp, 0x10
mov ebx, eax
push ebx
push 0x1b7
push edi
call fcn.0041d800
mov ecx, dword [esp + 0x28]
mov esi, eax
mov eax, 1
lea ecx, [ecx - 0x1f]
shl eax, cl
cdq
push edx
push eax
push esi
push edi
call fcn.00423a50
push eax
push 0x23
push edi
call fcn.0041d800
mov ecx, dword [edi + 0x10]
add esp, 0x28
mov esi, eax
mov eax, dword [esp + 0x34]
mov ecx, dword [ecx + 0x14]
push esi
push ebx
test dword [ecx + 0xa4], eax
je 0x42085c
push edi
call fcn.004223c0
add esp, 0xc
jmp 0x42086a
push 0x153
push edi
call fcn.0041d850
add esp, 0x10
push esi
push dword [esp + 0x18]
mov ebx, eax
push 0x122
push edi
call fcn.0041d850
push 0
mov ebp, eax
push 0x3ff
push ebp
push edi
call fcn.00410890
push 0x20
push 1
push dword [edi + 0x10]
mov dword [esp + 0x78], eax
call fcn.00409bc0
mov esi, eax
add esp, 0x2c
test esi, esi
je 0x4208c0
mov eax, dword [esp + 0x20]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x24]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push 0
push 0
push ebp
push edi
call fcn.0041b320
push dword [esp + 0x5c]
push esi
push eax
push 0x71
push edi
call fcn.0041d8c0
push ebx
push 0x1b6
push edi
mov dword [esp + 0x6c], eax
call fcn.0041d800
push 0x20
push 0
push 0x14
mov ebp, eax
call fcn.0040fcf0
push 0x20
push 1
push dword [edi + 0x10]
mov dword [esp + 0x94], eax
mov dword [esp + 0x8c], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x48
test esi, esi
jne 0x42091f
mov dword [esp + 0x4c], eax
jmp 0x42093e
mov eax, dword [esp + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x44]
push esi
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
lea eax, [esi + 0x18]
add esp, 8
mov dword [esp + 0x4c], eax
push ebx
push 0x1b7
push edi
call fcn.0041d800
push 0x20
push 0
push 0xb
mov dword [esp + 0x4c], eax
call fcn.0040fcf0
push 0x20
push 1
push dword [edi + 0x10]
mov ebx, eax
mov dword [esp + 0x68], edx
call fcn.00409bc0
mov esi, eax
add esp, 0x24
test esi, esi
je 0x42098b
mov eax, dword [esp + 0x44]
push esi
mov dword [esi + 0x30], ebx
push edi
mov dword [esi + 0x34], eax
call fcn.0041dbe0
add esp, 8
add esi, 0x18
push esi
push dword [esp + 0x50]
push dword [esp + 0x44]
push dword [esp + 0x40]
push 0x75
push edi
call fcn.0041d940
add esp, 0x18
mov esi, eax
mov edx, 0x168
jmp 0x420630
cmp esi, 0x20
jne 0x4205fd
push dword [esp + 0x18]
push 0x184
push edi
call fcn.0041d800
push eax
push 0xcf
push edi
call fcn.0041d800
push ebx
push 0x184
jmp 0x42061e