Function at 0x41a9c8
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4323a8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4d8
push ebx
push esi
xor ebx, ebx
push edi
xor eax, eax
mov dword [esp + 0x14], ebx
call fcn.0041c219
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
lea eax, [esp + 0xc]
push eax
push dword [ebp + 8]
lea ecx, [esp + 0x30]
mov dword [esp + 0x4f4], ebx
call fcn.0041a8ff
pop ecx
pop ecx
test al, al
jne 0x41aa5b
mov dword [esp + 0x4ec], 1
mov esi, dword [esp + 0x34]
cmp esi, ebx
je 0x41aa3f
call fcn.00406f2e
or dword [esp + 0x4ec], 0xffffffff
mov esi, dword [esp + 0x2c]
cmp esi, ebx
je 0x41aa54
call fcn.00406f2e
xor al, al
jmp 0x41b5fb
push dword [0x443310]
call fcn.00401216
pop ecx
push ebx
push ebx
push ebx
push 1
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], ebx
push 0x43718c
mov esi, 0x43717c
mov byte [ecx], bl
call fcn.0040918f
mov edx, esi
lea ecx, [esp + 0xd8]
call fcn.0041b678
mov byte [esp + 0x500], 2
cmp dword [eax + 0x14], 0x10
jb 0x41aaaf
mov eax, dword [eax]
push eax
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x4c], esp
push 0x4371b4
mov esi, 0x43719c
call fcn.0040878d
lea eax, [esp + 0xf8]
push eax
mov edx, esi
call fcn.0041b610
mov byte [esp + 0x504], 3
cmp dword [eax + 0x14], 8
jb 0x41aae7
mov eax, dword [eax]
push eax
call dword [0x434050]
push eax
call dword [0x434054]
call eax
push 1
xor edi, edi
lea esi, [esp + 0xc8]
mov dword [esp + 0x20], eax
call fcn.004094c0
push ebx
push 1
lea ecx, [esp + 0xb0]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
cmp dword [esp + 0x1c], ebx
jne 0x41abf0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x28], esp
push 0xf
pop esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4371dc
mov edi, 0x4371cc
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0xe0]
call fcn.0041b740
mov byte [esp + 0x4ec], 4
cmp dword [eax + 0x14], 0x10
jb 0x41ab6c
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4371fc
mov edi, 0x4371ec
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0xd0]
call fcn.0041b6dc
mov byte [esp + 0x4f8], 5
cmp dword [eax + 0x14], 0x10
jb 0x41abad
mov eax, dword [eax]
push eax
call dword [0x43405c]
push eax
call dword [0x434054]
call eax
call fcn.0041c219
push ebx
push 1
lea ecx, [esp + 0xb0]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0xcc]
call fcn.004092c1
mov dword [esp + 0x4ec], 6
jmp 0x41aa32
push ebx
push ebx
push 3
push ebx
push ebx
push dword [esp + 0x20]
mov edi, 0x43720c
push dword [esp + 0x40]
push dword [esp + 0x38]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push 0xf
pop esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437220
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0xac]
call fcn.0041b808
mov byte [esp + 0x50c], 7
cmp dword [eax + 0x14], 0x10
jb 0x41ac43
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437240
mov edi, 0x437234
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0xd4]
call fcn.0041b7a4
mov byte [esp + 0x518], 8
cmp dword [eax + 0x14], 0x10
jb 0x41ac84
mov eax, dword [eax]
mov edi, dword [0x43405c]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x94]
mov dword [esp + 0x28], eax
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x78]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
cmp dword [esp + 0x20], ebx
jne 0x41ae2a
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x28], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x43725c
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43724c
lea ecx, [esp + 0xa8]
call fcn.0041b8d0
mov byte [esp + 0x4ec], 9
cmp dword [eax + 0x14], 0x10
jb 0x41ad02
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x43727c
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43726c
lea ecx, [esp + 0x98]
call fcn.0041b86c
mov byte [esp + 0x4f8], 0xa
cmp dword [eax + 0x14], 0x10
jb 0x41ad41
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
call fcn.0041c219
push ebx
push 1
lea ecx, [esp + 0x78]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x94]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
push dword [esp + 0x1c]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4372a0
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43728c
lea ecx, [esp + 0xac]
call fcn.0041b998
mov byte [esp + 0x4f0], 0xb
cmp dword [eax + 0x14], 0x10
jb 0x41adb4
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4372c0
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x4372b4
lea ecx, [esp + 0x9c]
call fcn.0041b934
mov byte [esp + 0x4fc], 0xc
cmp dword [eax + 0x14], 0x10
jb 0x41adf3
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x78]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x94]
call fcn.004092c1
mov dword [esp + 0x4ec], 0xd
jmp 0x41aa32
push ebx
push 0x84000000
push ebx
push ebx
push ebx
push dword [esp + 0x44]
push dword [ebp + 0xc]
push dword [esp + 0x3c]
call dword [0x4341b8]
mov dword [esp + 0xc], eax
cmp eax, ebx
jne 0x41b046
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x28], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4372dc
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x4372cc
lea ecx, [esp + 0x54]
call fcn.0041ba60
mov byte [esp + 0x4ec], 0xe
cmp dword [eax + 0x14], 0x10
jb 0x41ae89
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4372fc
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x4372ec
lea ecx, [esp + 0x7c]
call fcn.0041b9fc
mov byte [esp + 0x4f8], 0xf
cmp dword [eax + 0x14], 0x10
jb 0x41aec5
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
call fcn.0041c219
push ebx
push 1
lea ecx, [esp + 0x5c]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x40]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
push dword [esp + 0x20]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437320
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43730c
lea ecx, [esp + 0x74]
call fcn.0041bb28
mov byte [esp + 0x4f0], 0x10
cmp dword [eax + 0x14], 0x10
jb 0x41af32
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437340
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x437334
lea ecx, [esp + 0x64]
call fcn.0041bac4
mov byte [esp + 0x4fc], 0x11
cmp dword [eax + 0x14], 0x10
jb 0x41af6e
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x40]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x5c]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
push dword [esp + 0x1c]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437360
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43734c
lea ecx, [esp + 0x74]
call fcn.0041bbf0
mov byte [esp + 0x4f0], 0x12
cmp dword [eax + 0x14], 0x10
jb 0x41afd6
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437380
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x437374
lea ecx, [esp + 0x64]
call fcn.0041bb8c
mov byte [esp + 0x4fc], 0x13
cmp dword [eax + 0x14], 0x10
jb 0x41b012
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x40]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x5c]
call fcn.004092c1
mov dword [esp + 0x4ec], 0x14
jmp 0x41aa32
cmp dword [ebp + 0x10], ebx
je 0x41b062
mov eax, dword [ebp + 0x10]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x41b051
sub eax, edx
sar eax, 1
jmp 0x41b064
xor eax, eax
push dword [ebp + 0x18]
mov edi, 0x43738c
push dword [ebp + 0x14]
push eax
push dword [ebp + 0x10]
push dword [esp + 0x1c]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4373a0
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0x84]
call fcn.0041bcbc
mov byte [esp + 0x500], 0x15
cmp dword [eax + 0x14], 0x10
jb 0x41b0b0
mov eax, dword [eax]
push eax
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x4c], esp
push 0x4373cc
mov esi, 0x4373b4
call fcn.0040878d
lea eax, [esp + 0x6c]
push eax
mov edx, esi
call fcn.0041bc54
mov byte [esp + 0x504], 0x16
cmp dword [eax + 0x14], 8
jb 0x41b0e5
mov eax, dword [eax]
push eax
call dword [0x434050]
push eax
call dword [0x434054]
call eax
push 1
xor edi, edi
lea esi, [esp + 0x3c]
mov dword [esp + 0x1c], eax
call fcn.004094c0
push ebx
push 1
lea ecx, [esp + 0x5c]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
cmp dword [esp + 0x18], ebx
jne 0x41b326
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x28], esp
push 0xf
pop esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4373f4
mov edi, 0x4373e4
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0x70]
call fcn.0041bd84
mov byte [esp + 0x4ec], 0x17
cmp dword [eax + 0x14], 0x10
jb 0x41b161
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437414
mov edi, 0x437404
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0x60]
call fcn.0041bd20
mov byte [esp + 0x4f8], 0x18
cmp dword [eax + 0x14], 0x10
jb 0x41b19f
mov eax, dword [eax]
mov edi, dword [0x43405c]
push eax
call edi
push eax
call dword [0x434054]
call eax
call fcn.0041c219
push ebx
push 1
lea ecx, [esp + 0x40]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x5c]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
push dword [esp + 0x20]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437438
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x437424
lea ecx, [esp + 0x74]
call fcn.0041be4c
mov byte [esp + 0x4f0], 0x19
cmp dword [eax + 0x14], 0x10
jb 0x41b212
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437458
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43744c
lea ecx, [esp + 0x64]
call fcn.0041bde8
mov byte [esp + 0x4fc], 0x1a
cmp dword [eax + 0x14], 0x10
jb 0x41b24e
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x40]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x5c]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
push dword [esp + 0x1c]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437478
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x437464
lea ecx, [esp + 0x74]
call fcn.0041bf14
mov byte [esp + 0x4f0], 0x1b
cmp dword [eax + 0x14], 0x10
jb 0x41b2b6
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437498
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43748c
lea ecx, [esp + 0x64]
call fcn.0041beb0
mov byte [esp + 0x4fc], 0x1c
cmp dword [eax + 0x14], 0x10
jb 0x41b2f2
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x40]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x5c]
call fcn.004092c1
mov dword [esp + 0x4ec], 0x1d
jmp 0x41aa32
cmp dword [ebp + 0x1c], ebx
je 0x41b47e
push 0x400
lea eax, [esp + 0xe4]
push ebx
push eax
call fcn.00422c70
add esp, 0xc
push 0xf
mov dword [esp + 0x1c], ebx
pop esi
lea eax, [esp + 0x18]
push eax
push 0x400
lea eax, [esp + 0xe8]
push eax
push dword [esp + 0x18]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x50], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x4374b8
mov edi, 0x4374a4
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0x80]
call fcn.0041bfe0
mov byte [esp + 0x4fc], 0x1e
or dword [esp + 0x24], 1
cmp dword [eax + 0x14], 0x10
jb 0x41b3a5
mov eax, dword [eax]
push eax
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x54], esp
push 0x4374e4
mov edi, 0x4374cc
call fcn.0040878d
lea eax, [esp + 0x68]
push eax
mov edx, edi
call fcn.0041bf78
mov dword [esp + 0x500], 0x1f
or dword [esp + 0x28], 2
cmp dword [eax + 0x14], 8
jb 0x41b3e2
mov eax, dword [eax]
push eax
call dword [0x434050]
push eax
call dword [0x434054]
call eax
cmp eax, ebx
je 0x41b401
mov byte [esp + 0x13], 1
cmp dword [esp + 0x18], ebx
jne 0x41b405
mov byte [esp + 0x13], bl
test byte [esp + 0x14], 2
je 0x41b421
and dword [esp + 0x14], 0xfffffffd
push 1
xor edi, edi
lea esi, [esp + 0x3c]
call fcn.004094c0
push 0xf
pop esi
mov dword [esp + 0x4ec], ebx
test byte [esp + 0x14], 1
je 0x41b440
and dword [esp + 0x14], 0xfffffffe
push ebx
push 1
lea ecx, [esp + 0x5c]
call fcn.004092c1
cmp byte [esp + 0x13], bl
je 0x41b481
push dword [ebp + 0x20]
lea eax, [esp + 0xe4]
push dword [esp + 0x1c]
push eax
call dword [ebp + 0x1c]
add esp, 0xc
test al, al
je 0x41b481
push 0x400
lea eax, [esp + 0xe4]
push ebx
push eax
mov dword [esp + 0x24], ebx
call fcn.00422c70
add esp, 0xc
jmp 0x41b34c
push 0xf
pop esi
push dword [esp + 0x20]
mov edi, 0x4374fc
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437510
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0x74]
call fcn.0041c0a8
mov byte [esp + 0x4f0], 0x20
cmp dword [eax + 0x14], 0x10
jb 0x41b4c0
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x50], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437530
mov edi, 0x437524
mov byte [ecx], bl
call fcn.0040918f
mov edx, edi
lea ecx, [esp + 0x64]
call fcn.0041c044
mov byte [esp + 0x4fc], 0x21
cmp dword [eax + 0x14], 0x10
jb 0x41b4fe
mov eax, dword [eax]
mov edi, dword [0x43405c]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x40]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x5c]
mov byte [esp + 0x4f4], bl
call fcn.004092c1
push dword [esp + 0x1c]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437550
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x43753c
lea ecx, [esp + 0x74]
call fcn.0041c170
mov byte [esp + 0x4f0], 0x22
cmp dword [eax + 0x14], 0x10
jb 0x41b56c
mov eax, dword [eax]
push eax
push ebx
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x50], esp
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push 0x437570
mov byte [ecx], bl
call fcn.0040918f
mov edx, 0x437564
lea ecx, [esp + 0x64]
call fcn.0041c10c
mov byte [esp + 0x4fc], 0x23
cmp dword [eax + 0x14], 0x10
jb 0x41b5a8
mov eax, dword [eax]
push eax
call edi
push eax
call dword [0x434054]
call eax
push ebx
push 1
lea ecx, [esp + 0x40]
call fcn.004092c1
push ebx
push 1
lea ecx, [esp + 0x5c]
call fcn.004092c1
mov dword [esp + 0x4ec], 0x24
mov esi, dword [esp + 0x34]
cmp esi, ebx
je 0x41b5e4
call fcn.00406f2e
or dword [esp + 0x4ec], 0xffffffff
mov esi, dword [esp + 0x2c]
cmp esi, ebx
je 0x41b5f9
call fcn.00406f2e
mov al, 1
mov ecx, dword [esp + 0x4e4]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret