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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x10062256
push eax
mov dword fs:[0], esp
sub esp, 0xf0
cmp byte [ebp + 0x18], 0
push ebx
push esi
push edi
mov esi, edx
je 0x1004202f
mov eax, dword [ebp + 0x10]
push 0x1a
pop edi
mov ecx, dword [eax]
cmp ecx, edi
jge 0x10042017
mov eax, dword [ebp + 0x1c]
movsx edx, byte [eax]
add edx, ecx
jmp 0x10042021
mov eax, ecx
cdq
idiv edi
movsx eax, byte [esi]
add edx, eax
mov ecx, dword [ebp + 0x20]
push edx
call fcn.10010e1d
jmp 0x1004270b
xor ebx, ebx
mov dword [esp + 0xb4], 7
xor eax, eax
mov dword [esp + 0xb0], ebx
mov word [esp + 0xa0], ax
push 1
lea ecx, [esp + 0x4c]
mov dword [esp + 0x108], ebx
call fcn.100013b5
xor edx, edx
mov dword [esp + 0xc], ebx
inc edx
jmp 0x10042077
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x48]
mov dword [eax + ecx*4], edx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], edx
jl 0x10042068
mov dword [esp + 0xc], ebx
jmp 0x10042093
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x60], 0xfffffffc
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jl 0x10042083
mov dword [esp + 0x68], ebx
jmp 0x100420b3
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x48]
mov dword [eax + ecx*4], 0xf4a8
inc dword [esp + 0x68]
cmp dword [esp + 0x68], edx
jl 0x100420a0
cmp dword [esp + 0x48], 0
je 0x100420d9
push dword [esp + 0x48]
call fcn.10048e11
xor edx, edx
mov dword [esp + 0x4c], ebx
pop ecx
mov dword [esp + 0x4c], ebx
inc edx
mov dword [esp + 0x50], ebx
push 0x4f31
lea eax, [ebp + 8]
mov cl, 1
push eax
push edx
push 0x6774
push 0x63b0
push 0x5b0a
lea eax, [esp + 0xb8]
mov edx, 0x22e1
push eax
push ebx
call fcn.10041eaf
mov eax, dword [0x1007fcc4]
add esp, 0x20
test al, 1
jne 0x1004213b
or eax, 1
mov dword [0x1007fcc4], eax
push 0xc5ed
mov byte [esp + 0x108], 1
call fcn.10010b0e
pop ecx
mov word [0x1007fcb8], ax
mov byte [esp + 0x104], bl
mov dword [esp + 0x2c], 0xdf37d45d
mov dword [esp + 0xc], ebx
jmp 0x10042159
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x28], 1
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 1
jl 0x10042149
mov dword [esp + 0x28], 0x1c
jmp 0x1004217f
push ebx
mov dword [esp + 0x30], 1
push ecx
call fcn.10040f0e
dec dword [esp + 0x30]
pop ecx
pop ecx
cmp dword [esp + 0x28], 0x18
jge 0x1004216a
push 1
push ecx
push ecx
mov ecx, 0x4a63
call fcn.10040bff
mov eax, dword [0x1007fcc4]
add esp, 0xc
test al, 2
jne 0x100421c8
or eax, 2
mov dword [0x1007fcc4], eax
push 0x4e2a
mov byte [esp + 0x108], 2
call fcn.10010b0e
pop ecx
mov word [0x1007fcbc], ax
mov byte [esp + 0x104], bl
mov dword [esp + 0x10], 1
mov dword [esp + 0x10], 0xfffffff2
jmp 0x1004224a
push 1
lea ecx, [esp + 0x58]
call fcn.100013b5
mov byte [esp + 0x104], 3
mov dword [esp + 0xc], ebx
jmp 0x10042206
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
mov dword [eax + ecx*4], 0xaa9ac70c
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 1
jl 0x100421f3
push 0x66b7
lea eax, [esp + 0x58]
mov dl, 1
push eax
push ecx
call fcn.10040f85
add esp, 0xc
mov byte [esp + 0x104], bl
cmp dword [esp + 0x54], 0
je 0x10042246
push dword [esp + 0x54]
call fcn.10048e11
pop ecx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
dec dword [esp + 0x10]
cmp dword [esp + 0x10], 0xffffffee
jge 0x100421da
mov edi, dword [ebp + 8]
test edi, edi
jmp 0x10042447
push dword [esp + 0x44]
movdqa xmm0, xmmword [0x1006fc80]
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x38], ebx
push eax
push ebx
lea ecx, [esp + 0x40]
mov dword [esp + 0x44], ebx
movdqu xmmword [esp + 0xd0], xmm0
mov dword [esp + 0x48], ebx
call fcn.10013e5d
mov byte [esp + 0x104], 4
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x10], 0x52487223
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1c], 0x5ad6cad8
mov dword [esp + 0x18], 3
cmp dword [esp + 0x18], ebx
jl 0x10042312
lea eax, [esp + 0x30]
mov dword [esp + 0x10], ebx
push eax
lea eax, [esp + 0x1c]
xor dl, dl
push eax
call fcn.10041e86
mov dword [esp + 0x18], 3
pop ecx
pop ecx
cmp dword [esp + 0x10], ebx
jl 0x1004230c
lea eax, [esp + 0x26]
mov byte [esp + 0x26], bl
push eax
push 0x10c
push ecx
xor dl, dl
call fcn.10040f85
add esp, 0xc
dec dword [esp + 0x10]
jns 0x100422ed
dec dword [esp + 0x18]
jns 0x100422c8
mov dword [esp + 0x40], 0x26ac
cmp dword [esp + 0x40], 0x26b6
jle 0x1004237e
push ebx
push ebx
call dword [sym.imp.USER32.dll_LoadCursorA]
mov esi, ebx
mov edi, ebx
mov dword [esp + 0x10], 0x1296
mov eax, edi
lea ecx, [esp + 0xe0]
cdq
push edx
push eax
call fcn.10001311
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10042353
mov eax, dword [eax]
push eax
call fcn.10048d40
pop ecx
push ebx
push 1
lea ecx, [esp + 0xe8]
call fcn.10001516
add edi, esi
dec dword [esp + 0x10]
jne 0x10042338
inc esi
cmp esi, 0x5899
jl 0x1004232e
mov edi, dword [esp + 0x2c]
cmp dword [esp + 0x18], ebx
jne 0x10042388
mov eax, dword [esp + 0x18]
mov dword [esp + 0x10], 1
xor edx, edx
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x18]
add ecx, dword [eax + 4]
mov esi, dword [eax]
mov eax, dword [esp + 0x30]
cmp ecx, dword [eax + 0xc]
setge dl
xor eax, eax
cmp edx, esi
setge al
dec eax
je 0x100423cc
test esi, esi
je 0x100423cc
xor eax, eax
inc eax
jmp 0x100423ce
mov eax, ebx
cmp eax, 8
sbb eax, eax
inc eax
add eax, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
cmp dword [esp + 0x40], 0x263c
jge 0x100423f1
push str.cvbvnzaa_tpsjkym_dhm
call fcn.10048d40
pop ecx
mov dword [esp + 0x104], ebx
push dword [esp + 0x30]
call fcn.10048e11
pop ecx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
call fcn.10040b9b
push 0x34
pop ecx
xor edx, edx
div ecx
push 0x1007fcbc
push ecx
push ecx
push ebx
lea eax, [esp + 0xb0]
mov dword [esp + 0x98], edx
push eax
lea eax, [esp + 0x9c]
mov edx, 0x1007fcb8
push eax
call fcn.10040fd1
add esp, 0x18
dec edi
mov dword [esp + 0x2c], edi
jne 0x1004225b
mov dword [esp + 0x84], 0x4914d2ed
lea ecx, [esp + 0x8c]
push 2
mov dword [esp + 0x24], 0xffffffff
pop esi
mov dword [esp + 0x98], ebx
mov dword [esp + 0x14], 0x632c5b64
mov dword [esp + 0x3c], 0xfffffff8
push esi
call fcn.100013b5
push 0x27d
push 0x25f
push ebx
push 0x5c31
push 0x1e61
lea eax, [esp + 0xcc]
mov byte [esp + 0x118], 7
push eax
push 0xb4a
mov dword [esp + 0x38], 0x63d2c82f
lea edx, [esp + 0xa8]
mov dword [esp + 0x38], 6
xor cl, cl
push 1
call fcn.10041eaf
add esp, 0x20
lea eax, [esp + 0x98]
lea edx, [esp + 0x14]
push eax
push ebx
lea eax, [esp + 0x8c]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x30]
push eax
push ecx
call fcn.10040cc0
add esp, 0x18
mov dword [esp + 0x20], 1
cmp dword [esp + 0x20], ebx
jl 0x100426c7
mov dword [esp + 0x44], 0x280bfe73
lea ecx, [esp + 0x6c]
mov dword [esp + 0x9c], 0xee511904
mov dword [esp + 0x1c], 0x46df8000
mov dword [esp + 0x1c], ebx
push esi
call fcn.100013b5
mov byte [esp + 0x104], 8
mov dword [esp + 0xc], ebx
jmp 0x1004255c
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x6c]
mov dword [eax + ecx*4], 0x9ac4e69a
inc dword [esp + 0xc]
cmp dword [esp + 0xc], esi
jl 0x10042549
mov dword [esp + 0xc], ebx
jmp 0x1004257b
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0xd0], 3
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 4
jl 0x10042568
mov dword [esp + 0x14], 1
cmp dword [esp + 0x14], ebx
jl 0x100425d7
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x8c]
cmp dword [eax + ecx*4], ebx
jne 0x100425d7
push ecx
lea eax, [esp + 0xa0]
push eax
push ecx
lea eax, [esp + 0x2c]
push eax
push ecx
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0xa8]
push eax
sub esp, 0xc
lea ecx, [esp + 0x70]
call fcn.10041e1c
add esp, 0x2c
dec dword [esp + 0x14]
jns 0x10042590
mov dword [esp + 0x14], ebx
jmp 0x1004268d
push 4
lea ecx, [esp + 0x7c]
call fcn.100013b5
push ebx
push 0xe18
lea eax, [esp + 0xc4]
mov byte [esp + 0x10c], 9
push eax
lea eax, [esp + 0x84]
mov dword [esp + 0x28], 0x9457720
push eax
push 1
mov dword [esp + 0x30], 0xfffffffd
mov edx, 0x5892
mov dword [esp + 0x30], 5
xor cl, cl
push 0x2684
call fcn.10041c8c
push 0x2573
push 1
push 0x39d4
lea eax, [esp + 0x4b]
mov byte [esp + 0x4b], bl
push eax
push 1
mov dl, 1
mov ecx, 0x255b
call fcn.10040d3f
add esp, 0x2c
dec dword [esp + 0xd4]
mov byte [esp + 0x104], 8
cmp dword [esp + 0x78], 0
je 0x10042689
push dword [esp + 0x78]
call fcn.10048e11
pop ecx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 1
jle 0x100425e0
mov byte [esp + 0x104], 7
cmp dword [esp + 0x6c], 0
je 0x100426bd
push dword [esp + 0x6c]
call fcn.10048e11
pop ecx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
dec dword [esp + 0x20]
jns 0x10042512
mov byte [esp + 0x104], bl
cmp dword [esp + 0x8c], 0
je 0x100426e5
push dword [esp + 0x8c]
call fcn.10048e11
pop ecx
mov ecx, dword [ebp + 0x14]
lea eax, [esp + 0xa0]
cmp ecx, eax
je 0x100426fc
push 0xffffffffffffffff
push ebx
push eax
call fcn.100114f5
push ebx
push 1
lea ecx, [esp + 0xa8]
call fcn.10011637
mov ecx, dword [esp + 0xfc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret