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

Disassembly:
push 0xffffffffffffffff
push 0x484d46
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x204
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov edi, dword [sym.imp.KERNEL32.DLL_InitializeCriticalSection]
lea eax, [esi + 0x114]
push eax
call edi
lea ecx, [esi + 0x12c]
push ecx
call edi
lea edx, [esi + 0x144]
push edx
call edi
call fcn.00425ee0
push 0xc
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
xor ebx, ebx
cmp eax, ebx
mov dword [esp + 0x21c], ebx
je 0x4135bb
mov ecx, eax
call fcn.00425d00
jmp 0x4135bd
xor eax, eax
mov dword [esp + 0x21c], 0xffffffff
mov dword [esi], eax
mov ebp, 0xff
mov edi, 0x4a0c48
mov eax, dword [edi]
cmp eax, ebx
je 0x4135e3
mov ecx, dword [esi]
push ebp
push eax
call fcn.00425d40
sub edi, 4
dec ebp
cmp edi, 0x4a084c
jge 0x4135d4
push 8
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 1
je 0x413615
mov ecx, eax
call fcn.00417d30
jmp 0x413617
xor eax, eax
or ebp, 0xffffffff
push 0xc
mov dword [esp + 0x220], ebp
mov dword [esi + 4], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
mov edi, 2
cmp eax, ebx
mov dword [esp + 0x21c], edi
je 0x41364b
mov ecx, eax
call fcn.00425d00
jmp 0x41364d
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 8], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 3
je 0x41367f
push 1
mov ecx, eax
call fcn.00423680
jmp 0x413681
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0xc], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 4
je 0x4136b3
push 1
mov ecx, eax
call fcn.00423680
jmp 0x4136b5
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x10], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 5
je 0x4136e6
push ebx
mov ecx, eax
call fcn.00423680
jmp 0x4136e8
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x14], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 6
je 0x41371a
push 1
mov ecx, eax
call fcn.00423680
jmp 0x41371c
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x18], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 7
je 0x41374e
push 1
mov ecx, eax
call fcn.00423680
jmp 0x413750
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x1c], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 8
je 0x413780
mov ecx, eax
call fcn.004230c0
jmp 0x413782
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x20], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 9
je 0x4137b3
push ebx
mov ecx, eax
call fcn.00423680
jmp 0x4137b5
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x24], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0xa
je 0x4137e6
push ebx
mov ecx, eax
call fcn.00423680
jmp 0x4137e8
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x2c], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0xb
je 0x413819
push ebx
mov ecx, eax
call fcn.00423680
jmp 0x41381b
xor eax, eax
mov dword [esi + 0x30], eax
mov dword [esi + 0x38], 0x264
mov dword [esi + 0x3c], 0x318
mov dword [esi + 0x44], ebx
mov dword [esi + 0x40], ebx
mov eax, dword [esi + 0x38]
mov dword [esi + 0x48], eax
mov ecx, dword [esi + 0x3c]
mov eax, 1
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x50], eax
mov dword [esi + 0x54], ebx
mov dword [esi + 0x58], eax
mov dword [esi + 0x5c], eax
mov dword [esi + 0x60], ebx
mov dword [esi + 0x64], edi
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x34], ebx
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0xc
je 0x413886
push ebx
mov ecx, eax
call fcn.00423680
jmp 0x413888
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x68], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0xd
je 0x4138b8
mov ecx, eax
call fcn.004230c0
jmp 0x4138ba
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x6c], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0xe
je 0x4138ea
mov ecx, eax
call fcn.004230c0
jmp 0x4138ec
xor eax, eax
mov edi, 1
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edi
mov dword [esi + 0x78], edi
mov dword [esi + 0x7c], edi
mov dword [esi + 0x80], edi
push 8
mov dword [esp + 0x220], ebp
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0xf
je 0x413947
push str.Latin1
mov ecx, eax
call fcn.00417d60
jmp 0x413949
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edi
mov dword [esi + 0x98], edi
mov dword [esi + 0x9c], ebx
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x10
je 0x41398e
mov ecx, eax
call fcn.004230c0
jmp 0x413990
xor eax, eax
push 8
mov dword [esp + 0x220], ebp
mov dword [esi + 0xa0], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x11
je 0x4139c8
push 0x49ddc0
mov ecx, eax
call fcn.00417d60
jmp 0x4139ca
xor eax, eax
mov dword [esi + 0xa4], eax
mov eax, 0x3ff00000
mov dword [esi + 0xd0], ebx
mov dword [esi + 0xd8], ebx
mov dword [esi + 0xe0], ebx
mov ecx, esi
mov dword [esp + 0x21c], ebp
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xac], edi
mov dword [esi + 0xb0], edi
mov dword [esi + 0xb4], edi
mov dword [esi + 0xb8], edi
mov dword [esi + 0xbc], edi
mov dword [esi + 0xc0], ebx
mov dword [esi + 0xc4], ebp
mov dword [esi + 0xc8], ebp
mov dword [esi + 0xd4], eax
mov dword [esi + 0xdc], ebx
mov dword [esi + 0xe4], eax
mov dword [esi + 0xe8], ebx
mov dword [esi + 0xec], ebx
mov dword [esi + 0xf0], edi
mov dword [esi + 0xf4], ebx
call fcn.00413f70
push 8
mov dword [esi + 0xfc], ebx
mov dword [esi + 0x100], ebx
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x12
je 0x413a89
push 4
mov ecx, eax
call fcn.00425bf0
jmp 0x413a8b
xor eax, eax
push 8
mov dword [esp + 0x220], ebp
mov dword [esi + 0x104], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x13
je 0x413ac0
push 4
mov ecx, eax
call fcn.00425bf0
jmp 0x413ac2
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x108], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x14
je 0x413af5
mov ecx, eax
call fcn.00423660
jmp 0x413af7
xor eax, eax
push 0x10
mov dword [esp + 0x220], ebp
mov dword [esi + 0x10c], eax
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x15
je 0x413b2a
mov ecx, eax
call fcn.00423660
jmp 0x413b2c
xor eax, eax
mov dword [esi + 0x110], eax
mov dword [esi + 0x28], ebx
mov eax, dword [0x4976b4]
mov dword [esp + 0x21c], ebp
cmp eax, ebx
je 0x413b61
mov edi, 0x4976b4
mov edx, dword [edi - 4]
mov ecx, dword [esi + 8]
push edx
push eax
call fcn.00425d40
mov eax, dword [edi + 8]
add edi, 8
cmp eax, ebx
jne 0x413b4a
push 0x38
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x16
je 0x413b94
push 0x3a
push 0x499890
push ebx
push str.Latin1
mov ecx, eax
call fcn.00423530
jmp 0x413b96
xor eax, eax
mov ecx, dword [eax]
push eax
push ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x224], ebp
call fcn.004236d0
push 0x38
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x17
je 0x413bdf
push 0x81
push 0x499c30
push ebx
push str.ASCII7
mov ecx, eax
call fcn.00423530
jmp 0x413be1
xor eax, eax
mov ecx, dword [eax]
push eax
push ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x224], ebp
call fcn.004236d0
push 0x38
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x18
je 0x413c27
push 0x79
push 0x49a440
push ebx
push str.Symbol
mov ecx, eax
call fcn.00423530
jmp 0x413c29
xor eax, eax
mov ecx, dword [eax]
push eax
push ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x224], ebp
call fcn.004236d0
push 0x38
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x19
je 0x413c6f
push 0x1e
push 0x49abd0
push ebx
push str.ZapfDingbats
mov ecx, eax
call fcn.00423530
jmp 0x413c71
xor eax, eax
mov ecx, dword [eax]
push eax
push ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x224], ebp
call fcn.004236d0
push 0x38
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x1a
je 0x413cb6
push 0x413e70
push 1
push str.UTF_8
mov ecx, eax
call fcn.004235d0
jmp 0x413cb8
xor eax, eax
mov ecx, dword [eax]
push eax
push ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x224], ebp
call fcn.004236d0
push 0x38
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x1b
je 0x413cfd
push 0x413f40
push 1
push str.UCS_2
mov ecx, eax
call fcn.004235d0
jmp 0x413cff
xor eax, eax
mov ecx, dword [eax]
push eax
push ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x224], ebp
call fcn.004236d0
mov edi, dword [esp + 0x224]
cmp edi, ebx
je 0x413d86
cmp byte [edi], bl
je 0x413d86
push 8
call fcn.0047c23c
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebx
mov dword [esp + 0x21c], 0x1c
je 0x413d4a
push edi
mov ecx, eax
call fcn.00417d60
mov edi, eax
jmp 0x413d4c
xor edi, edi
mov eax, dword [edi + 4]
push 0x49b60c
push eax
mov dword [esp + 0x224], 0xffffffff
call fcn.004658d3
mov ebp, eax
add esp, 8
cmp ebp, ebx
jne 0x413e24
cmp edi, ebx
je 0x413d86
mov ecx, edi
call fcn.00417ea0
push edi
call fcn.0047c265
add esp, 4
push 0x49dda4
call fcn.004231f0
push eax
call fcn.004232a0
mov edi, eax
push 0x49b60c
mov eax, dword [edi + 4]
push eax
call fcn.004658d3
mov ebp, eax
add esp, 0x10
cmp ebp, ebx
jne 0x413e24
cmp edi, ebx
je 0x413dc3
mov ecx, edi
call fcn.00417ea0
push edi
call fcn.0047c265
add esp, 4
lea eax, [esp + 0x14]
push 0x200
push eax
push ebx
call dword [sym.imp.KERNEL32.DLL_GetModuleFileNameA]
cmp eax, ebx
jle 0x413ddf
cmp eax, 0x200
jb 0x413de3
mov byte [esp + 0x14], bl
lea ecx, [esp + 0x14]
push ecx
call fcn.00423370
mov edi, eax
push 0x49dda4
push edi
call fcn.004232a0
mov eax, dword [edi + 4]
push 0x49b60c
push eax
call fcn.004658d3
mov ebp, eax
add esp, 0x14
cmp ebp, ebx
jne 0x413e24
cmp edi, ebx
je 0x413e4a
mov ecx, edi
call fcn.00417ea0
push edi
call fcn.0047c265
jmp 0x413e47
push ebp
push edi
mov ecx, esi
call fcn.00414d70
cmp edi, ebx
je 0x413e41
mov ecx, edi
call fcn.00417ea0
push edi
call fcn.0047c265
add esp, 4
push ebp
call fcn.00465825
add esp, 4
mov ecx, dword [esp + 0x214]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x210
ret 4