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

Disassembly:
push esi
push ebx
push ebp
fldcw word [0x58ac6c]
sub esp, 0x1ac
mov edx, edi
xor eax, eax
mov edi, esp
mov ecx, 0x6b
rep stosd dword es:[edi], eax
mov edi, edx
mov ecx, dword [0x58ac74]
mov ebp, dword fs:[0x2c]
mov ebp, dword [ebp + ecx*4]
xor eax, eax
inc eax
lock xadd dword [ebp + 0x10], eax
push eax
push 0x5bdd34
push 0
push 0
push dword [ebp]
mov dword [ebp], esp
cmp dword [ebp + 0xc], 0
jne 0x5487eb
nop dword [eax]
nop dword [eax]
mov eax, dword [esp + 0x1d0]
push dword [eax]
mov eax, dword [esp]
test eax, eax
je 0x41b365
lea eax, [esp + 0x5c]
mov ecx, eax
add ecx, 0x10
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
lea eax, [esp + 0x6c]
push eax
push 0
push 1
push 0x564f80
push 0x564f84
push dword [esp + 0x14]
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0x3c], 0x81c00118
call dword [eax + 0x14]
cmp eax, 0
jl 0x41b362
lea edx, [esp + 0x70]
mov dword [esp + 0x60], edx
mov eax, dword [esp + 0x60]
mov eax, dword [eax - 4]
push eax
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x64]
push eax
push 3
push dword [esp + 0xc]
push dword [esp + 0x14]
mov dword [esp + 0x3c], 0x81c00118
call fcn.004d1476
mov dword [esp + 0x10], eax
cmp eax, 0
jl 0x41b35e
push 0
push 0
push 0
push 0
lea eax, [esp]
push eax
lea eax, [esp + 0x8c]
push eax
push 3
mov dword [esp + 0x44], 0x82400118
call fcn.0055dc24
cmp eax, 0
jl 0x41b359
pop eax
pop eax
pop eax
pop edx
push eax
push 0xfffffffffffffff0
push dword [esp + 4]
mov dword [esp + 0x34], 0x81400118
call dword [0x5639cc]
cmp dword [ebp + 0x20], 0
jne 0x41b34f
mov ecx, dword [ebp]
add ecx, 0xfffffff4
cmp ecx, esp
mov esp, ecx
jne 0x41b336
push eax
mov dword [esp + 0x30], 0x81000118
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x3c], eax
mov edx, dword [esp]
mov dword [esp + 0x90], edx
push dword [esp + 0x90]
mov edx, dword [esp]
mov dword [esp + 0x64], edx
nop
nop
nop
lea edx, [esp + 0x84]
push edx
mov dword [esp + 0x38], 0x81800118
call fcn.005612fc
nop
nop
nop
lea esp, [esp + 0x14]
nop dword [eax]
mov eax, dword [esp + 0x1d0]
push dword [eax]
mov eax, dword [esp]
test eax, eax
je 0x41b399
lea eax, [esp + 0x88]
mov ecx, eax
add ecx, 0x10
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
lea eax, [esp + 0x98]
push eax
push 0
push 1
push 0x564f94
push 0x564f98
push dword [esp + 0x14]
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0x3c], 0x81c00119
call dword [eax + 0x14]
cmp eax, 0
jl 0x41b396
lea edx, [esp + 0x9c]
mov dword [esp + 0x8c], edx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax - 4]
push eax
lea eax, [esp + 0xa0]
push eax
lea eax, [esp + 0x90]
push eax
push 3
push dword [esp + 0xc]
push dword [esp + 0x14]
mov dword [esp + 0x3c], 0x81c00119
call fcn.004d1476
mov dword [esp + 0x10], eax
cmp eax, 0
jl 0x41b392
push 0
push 0
push 0
push 0
lea eax, [esp]
push eax
lea eax, [esp + 0xb4]
push eax
push 3
mov dword [esp + 0x44], 0x82400119
call fcn.0055dc24
cmp eax, 0
jl 0x41b38d
pop eax
pop eax
pop eax
pop edx
push eax
push 0xffffffffffffffec
push dword [esp + 4]
mov dword [esp + 0x34], 0x81400119
call dword [0x5639cc]
cmp dword [ebp + 0x20], 0
jne 0x41b383
mov ecx, dword [ebp]
add ecx, 0xfffffff4
cmp ecx, esp
mov esp, ecx
jne 0x41b36d
push eax
mov dword [esp + 0x30], 0x81000119
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x3c], eax
mov edx, dword [esp]
mov dword [esp + 0xb8], edx
push dword [esp + 0xb8]
mov edx, dword [esp]
mov dword [esp + 0x68], edx
nop
nop
nop
lea edx, [esp + 0xac]
push edx
mov dword [esp + 0x38], 0x81800119
call fcn.005612fc
nop
nop
nop
lea esp, [esp + 0x14]
nop dword [eax]
push dword [esp + 0x50]
mov eax, 0xff7fffff
and eax, dword [esp]
push eax
mov edx, dword [esp]
mov dword [esp + 0x58], edx
lea esp, [esp + 8]
nop dword [eax]
push dword [esp + 0x54]
mov eax, 0xfffffdff
and eax, dword [esp]
push eax
mov edx, dword [esp]
mov dword [esp + 0x5c], edx
lea esp, [esp + 8]
nop dword [eax]
mov eax, dword [esp + 0x1d0]
push dword [eax]
mov eax, dword [esp]
test eax, eax
je 0x41b3bd
lea eax, [esp + 0xc4]
mov ecx, eax
add ecx, 0x10
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
lea eax, [esp + 0xd4]
push eax
push 0
push 1
push 0x564fa8
push 0x564fac
push dword [esp + 0x14]
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0x3c], 0x81c0011e
call dword [eax + 0x14]
cmp eax, 0
jl 0x41b3ba
lea edx, [esp + 0xd8]
mov dword [esp + 0xc8], edx
mov eax, dword [esp + 0xc8]
mov eax, dword [eax - 4]
push eax
lea eax, [esp + 0xe0]
push eax
lea eax, [esp + 0xcc]
push eax
push 3
push dword [esp + 0xc]
push dword [esp + 0x14]
mov dword [esp + 0x3c], 0x81c0011e
call fcn.004d1476
mov dword [esp + 0x10], eax
cmp eax, 0
jl 0x41b3b6
lea eax, [esp + 0xf0]
mov word [eax], 0x8003
mov dword [eax + 8], 1
lea eax, [esp + 0xb8]
push eax
push 0x77770001
push 0
lea eax, [esp + 0xfc]
push eax
lea eax, [esp + 0xf0]
push eax
mov dword [esp + 0x3c], 0x81c0011e
call fcn.0053092f
cmp eax, 0
jl 0x41b3b2
lea eax, [esp + 0xb8]
mov edx, dword [eax]
cmp dx, 1
jne 0x41ab71
xor eax, eax
jmp 0x41aba9
cmp dx, 0xb
jne 0x41ab7f
mov eax, dword [eax + 8]
jmp 0x41aba9
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push 0xb
push 0
push eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x48], 0x8280011e
call fcn.00530b58
cmp eax, 0
jl 0x41b3a1
pop eax
pop eax
pop eax
pop ecx
test ax, ax
nop
nop
nop
lea edx, [esp + 0xe0]
push eax
setne byte [esp]
push edx
mov dword [esp + 0x30], 0x8100011e
call fcn.005612fc
nop
nop
nop
cmp byte [esp], 0
lea esp, [esp + 0xc]
je 0x41adba
nop dword [eax]
mov eax, dword [esp + 0x1d0]
push dword [eax]
mov eax, dword [esp]
test eax, eax
je 0x41b3e4
lea eax, [esp + 0x10c]
mov ecx, eax
add ecx, 0x10
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
lea eax, [esp + 0x11c]
push eax
push 0
push 1
push 0x564fbc
push 0x564fc0
push dword [esp + 0x14]
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0x3c], 0x81c0011f
call dword [eax + 0x14]
cmp eax, 0
jl 0x41b3e1
lea edx, [esp + 0x120]
mov dword [esp + 0x110], edx
mov eax, dword [esp + 0x110]
mov eax, dword [eax - 4]
push eax
lea eax, [esp + 0x128]
push eax
lea eax, [esp + 0x114]
push eax
push 3
push dword [esp + 0xc]
push dword [esp + 0x14]
mov dword [esp + 0x3c], 0x81c0011f
call fcn.004d1476
mov dword [esp + 0x10], eax
cmp eax, 0
jl 0x41b3dd
lea eax, [esp + 0x138]
mov word [eax], 0x8003
mov dword [eax + 8], 1
lea eax, [esp + 0x100]
push eax
push 0x77770001
push 0
lea eax, [esp + 0x144]
push eax
lea eax, [esp + 0x138]
push eax
mov dword [esp + 0x3c], 0x81c0011f
call fcn.0053092f
cmp eax, 0
jl 0x41b3d9
lea eax, [esp + 0x100]
mov edx, dword [eax]
cmp dx, 1
jne 0x41acf5
xor eax, eax
jmp 0x41ad2d
cmp dx, 0xb
jne 0x41ad03
mov eax, dword [eax + 8]
jmp 0x41ad2d
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push 0xb
push 0
push eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x48], 0x8280011f
call fcn.00530b58
cmp eax, 0
jl 0x41b3c5
pop eax
pop eax
pop eax
pop ecx
test ax, ax
nop
nop
nop
lea edx, [esp + 0x128]
push eax
setne byte [esp]
push edx
mov dword [esp + 0x30], 0x8100011f
call fcn.005612fc
nop
nop
nop
cmp byte [esp], 0
lea esp, [esp + 0xc]
je 0x41ad8f
nop dword [eax]
push dword [esp + 0x54]
mov eax, 0x200
add eax, dword [esp]
jo 0x41b3ec
push eax
mov edx, dword [esp]
mov dword [esp + 0x5c], edx
lea esp, [esp + 8]
jmp 0x41adba
nop dword [eax]
nop dword [eax]
push dword [esp + 0x50]
mov eax, 0x800000
add eax, dword [esp]
jo 0x41b400
push eax
mov edx, dword [esp]
mov dword [esp + 0x58], edx
lea esp, [esp + 8]
nop dword [eax]
mov eax, dword [esp + 0x1d0]
push dword [eax]
mov eax, dword [esp]
test eax, eax
je 0x41b440
lea eax, [esp + 0x144]
mov ecx, eax
add ecx, 0x10
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
lea eax, [esp + 0x154]
push eax
push 0
push 1
push 0x564fd0
push 0x564fd4
push dword [esp + 0x14]
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0x3c], 0x81c00126
call dword [eax + 0x14]
cmp eax, 0
jl 0x41b43d
lea edx, [esp + 0x158]
mov dword [esp + 0x148], edx
mov eax, dword [esp + 0x148]
mov eax, dword [eax - 4]
push eax
lea eax, [esp + 0x160]
push eax
lea eax, [esp + 0x14c]
push eax
push 3
push dword [esp + 0xc]
push dword [esp + 0x14]
mov dword [esp + 0x3c], 0x81c00126
call fcn.004d1476
mov dword [esp + 0x10], eax
cmp eax, 0
jl 0x41b439
push dword [esp + 0x58]
push 0
push 0
push 0
push 0
lea eax, [esp]
push eax
lea eax, [esp + 0x178]
push eax
push 3
mov dword [esp + 0x48], 0x82800126
call fcn.0055dc24
cmp eax, 0
jl 0x41b434
pop eax
pop eax
pop eax
pop edx
push eax
push dword [esp + 4]
push 0xfffffffffffffff0
push dword [esp + 8]
mov dword [esp + 0x3c], 0x81c00126
call dword [0x5631ec]
cmp dword [ebp + 0x20], 0
jne 0x41b42a
mov ecx, dword [ebp]
add ecx, 0xfffffff0
cmp ecx, esp
mov esp, ecx
jne 0x41b414
push eax
mov dword [esp + 0x34], 0x81400126
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x3c], eax
mov edx, dword [esp]
mov dword [esp + 0x17c], edx
push dword [esp + 0x17c]
nop
nop
nop
lea edx, [esp + 0x170]
push edx
mov dword [esp + 0x3c], 0x81c00126
call fcn.005612fc
nop
nop
nop
lea esp, [esp + 0x18]
nop dword [eax]
mov eax, dword [esp + 0x1d0]
push dword [eax]
mov eax, dword [esp]
test eax, eax
je 0x41b477
lea eax, [esp + 0x170]
mov ecx, eax
add ecx, 0x10
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
lea eax, [esp + 0x180]
push eax
push 0
push 1
push 0x564fe4
push 0x564fe8
push dword [esp + 0x14]
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0x3c], 0x81c00127
call dword [eax + 0x14]
cmp eax, 0
jl 0x41b474
lea edx, [esp + 0x184]
mov dword [esp + 0x174], edx
mov eax, dword [esp + 0x174]
mov eax, dword [eax - 4]
push eax
lea eax, [esp + 0x188]
push eax
lea eax, [esp + 0x178]
push eax
push 3
push dword [esp + 0xc]
push dword [esp + 0x14]
mov dword [esp + 0x3c], 0x81c00127
call fcn.004d1476
mov dword [esp + 0x10], eax
cmp eax, 0
jl 0x41b470
push dword [esp + 0x5c]
push 0
push 0
push 0
push 0
lea eax, [esp]
push eax
lea eax, [esp + 0x1a0]
push eax
push 3
mov dword [esp + 0x48], 0x82800127
call fcn.0055dc24
cmp eax, 0
jl 0x41b46b
pop eax
pop eax
pop eax
pop edx
push eax
push dword [esp + 4]
push 0xffffffffffffffec
push dword [esp + 8]
mov dword [esp + 0x3c], 0x81c00127
call dword [0x5631ec]
cmp dword [ebp + 0x20], 0
jne 0x41b461
mov ecx, dword [ebp]
add ecx, 0xfffffff0
cmp ecx, esp
mov esp, ecx
jne 0x41b448
push eax
mov dword [esp + 0x34], 0x81400127
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x3c], eax
mov edx, dword [esp]
mov dword [esp + 0x1a4], edx
push dword [esp + 0x1a4]
nop
nop
nop
lea edx, [esp + 0x198]
push edx
mov dword [esp + 0x3c], 0x81c00127
call fcn.005612fc
nop
nop
nop
lea esp, [esp + 0x18]
nop dword [eax]
mov eax, dword [esp + 0x1d0]
push dword [eax]
mov eax, dword [esp]
test eax, eax
je 0x41b4ab
lea eax, [esp + 0x198]
mov ecx, eax
add ecx, 0x10
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
lea eax, [esp + 0x1a8]
push eax
push 0
push 1
push 0x564ff8
push 0x564ffc
push dword [esp + 0x14]
mov eax, dword [esp]
mov eax, dword [eax]
mov dword [esp + 0x3c], 0x81c0012a
call dword [eax + 0x14]
cmp eax, 0
jl 0x41b4a8
lea edx, [esp + 0x1ac]
mov dword [esp + 0x19c], edx
mov eax, dword [esp + 0x19c]
mov eax, dword [eax - 4]
push eax
lea eax, [esp + 0x1b0]
push eax
lea eax, [esp + 0x1a0]
push eax
push 3
push dword [esp + 0xc]
push dword [esp + 0x14]
mov dword [esp + 0x3c], 0x81c0012a
call fcn.004d1476
mov dword [esp + 0x10], eax
cmp eax, 0
jl 0x41b4a4
push 0
push 0
push 0
push 0
lea eax, [esp]
push eax
lea eax, [esp + 0x1c4]
push eax
push 3
mov dword [esp + 0x44], 0x8240012a
call fcn.0055dc24
cmp eax, 0
jl 0x41b49f
pop eax
pop eax
pop eax
pop edx
push eax
push 0x37
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x18]
mov dword [esp + 0x48], 0x8280012a
call dword [0x56390c]
cmp dword [ebp + 0x20], 0
jne 0x41b495
mov ecx, dword [ebp]
add ecx, 0xfffffff4
cmp ecx, esp
mov esp, ecx
jne 0x41b47f
push eax
mov dword [esp + 0x30], 0x8100012a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x3c], eax
mov edx, dword [esp]
mov dword [esp + 0x1c8], edx
push dword [esp + 0x1c8]
nop
nop
nop
lea edx, [esp + 0x1bc]
push edx
mov dword [esp + 0x38], 0x8180012a
call fcn.005612fc
nop
nop
nop
lea esp, [esp + 0x14]
nop dword [eax]
lea edx, [esp + 0x70]
mov ecx, dword [edx]
cmp cx, 0x1b
setl al
and ecx, 0xa
cmp cx, 8
setne cl
and al, cl
jne 0x41b21a
push edx
mov dword [esp + 0x24], 0x8040012b
call fcn.005612fc
lea edx, [esp + 0x98]
mov ecx, dword [edx]
cmp cx, 0x1b
setl al
and ecx, 0xa
cmp cx, 8
setne cl
and al, cl
jne 0x41b246
push edx
mov dword [esp + 0x24], 0x8040012b
call fcn.005612fc
lea edx, [esp + 0xd8]
mov ecx, dword [edx]
cmp cx, 0x1b
setl al
and ecx, 0xa
cmp cx, 8
setne cl
and al, cl
jne 0x41b272
push edx
mov dword [esp + 0x24], 0x8040012b
call fcn.005612fc
lea edx, [esp + 0x120]
mov ecx, dword [edx]
cmp cx, 0x1b
setl al
and ecx, 0xa
cmp cx, 8
setne cl
and al, cl
jne 0x41b29e
push edx
mov dword [esp + 0x24], 0x8040012b
call fcn.005612fc
lea edx, [esp + 0x158]
mov ecx, dword [edx]
cmp cx, 0x1b
setl al
and ecx, 0xa
cmp cx, 8
setne cl
and al, cl
jne 0x41b2ca
push edx
mov dword [esp + 0x24], 0x8040012b
call fcn.005612fc
lea edx, [esp + 0x180]
mov ecx, dword [edx]
cmp cx, 0x1b
setl al
and ecx, 0xa
cmp cx, 8
setne cl
and al, cl
jne 0x41b2f6
push edx
mov dword [esp + 0x24], 0x8040012b
call fcn.005612fc
lea edx, [esp + 0x1a8]
mov ecx, dword [edx]
cmp cx, 0x1b
setl al
and ecx, 0xa
cmp cx, 8
setne cl
and al, cl
jne 0x41b322
push edx
mov dword [esp + 0x24], 0x8040012b
call fcn.005612fc
pop ecx
mov dword [ebp], ecx
pop ecx
mov dword [ebp + 0x24], ecx
add esp, 0x1b8
pop ebp
pop ebx
pop esi
ret 4
add esp, 0xc
mov eax, 0xeaeaea05
push eax
push eax
push 0x159000
push 0x2a00118
call fcn.00560734
add esp, 0xc
mov eax, 0xeaeaea06
jmp 0x41b33e
add esp, 0x18
jmp 0x41b33e
pop edx
pop edx
jmp 0x41b33e
pop edx
jmp 0x41b33e
pop edx
mov eax, 0x800a005b
jmp 0x41b33e
add esp, 0xc
mov eax, 0xeaeaea05
push eax
push eax
push 0x168000
push 0xd680119
jmp 0x41b34a
add esp, 0xc
mov eax, 0xeaeaea06
jmp 0x41b375
add esp, 0x18
jmp 0x41b375
pop edx
pop edx
jmp 0x41b375
pop edx
jmp 0x41b375
pop edx
mov eax, 0x800a005b
jmp 0x41b375
add esp, 0x18
push eax
push eax
push 0x184000
push 0x1ac8011e
jmp 0x41b34a
pop edx
pop edx
jmp 0x41b3a4
pop edx
pop edx
jmp 0x41b3a4
pop edx
jmp 0x41b3a4
pop edx
mov eax, 0x800a005b
jmp 0x41b3a4
add esp, 0x18
push eax
push eax
push 0x184000
push 0x26e8011f
call fcn.00560734
pop edx
pop edx
jmp 0x41b3c8
pop edx
pop edx
jmp 0x41b3c8
pop edx
jmp 0x41b3c8
pop edx
mov eax, 0x800a005b
jmp 0x41b3c8
pop edx
mov eax, 0x8002000a
push eax
push eax
push 0x28000
push 0x33080120
jmp 0x41b3d4
pop edx
mov eax, 0x8002000a
push eax
push eax
push 0x28000
push 0x34880122
jmp 0x41b3d4
add esp, 0x10
mov eax, 0xeaeaea05
push eax
push eax
push 0x166000
push 0x35c80126
jmp 0x41b3d4
add esp, 0x10
mov eax, 0xeaeaea06
jmp 0x41b41c
add esp, 0x1c
jmp 0x41b41c
pop edx
pop edx
jmp 0x41b41c
pop edx
jmp 0x41b41c
pop edx
mov eax, 0x800a005b
jmp 0x41b41c
add esp, 0x10
mov eax, 0xeaeaea05
push eax
push eax
push 0x166000
push 0x40f80127
call fcn.00560734
add esp, 0x10
mov eax, 0xeaeaea06
jmp 0x41b450
add esp, 0x1c
jmp 0x41b450
pop edx
pop edx
jmp 0x41b450
pop edx
jmp 0x41b450
pop edx
mov eax, 0x800a005b
jmp 0x41b450
add esp, 0xc
mov eax, 0xeaeaea05
push eax
push eax
push 0x168000
push 0x4c28012a
jmp 0x41b45c
add esp, 0xc
mov eax, 0xeaeaea06
jmp 0x41b487
add esp, 0x18
jmp 0x41b487
pop edx
pop edx
jmp 0x41b487
pop edx
jmp 0x41b487
pop edx
mov eax, 0x800a005b
jmp 0x41b487