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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
mov dword [esi + 0x80], ebp
mov edi, ecx
mov dword [esi + 0x84], esp
mov dword [esi + 0x90], 0xffffffff
lea eax, [esi + 0x88]
mov dword [esi + 0x8c], 0x5cdc50
mov ecx, dword fs:[0]
mov dword [esi + 0x88], ecx
mov dword fs:[0], eax
lea ecx, [edi + 0x40]
mov dword [esi + 0x50], ecx
mov dword [esi + 4], ecx
call fcn.004c00d0
mov byte [edi + 0xa8], 0
mov eax, dword [0x60b9f0]
lea ecx, [eax + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete ch
setne cl
cmp dword [0x60b9f4], 0xa
mov eax, dword [edi + 0x3c]
setl dh
setge dl
cmp dh, ch
jne 0x4d0312
or dl, cl
je 0x4d0312
nop word cs:[eax + eax]
jmp 0x4d0310
lea ecx, [edi + 0x3c]
mov dword [esi + 0xc], ecx
cmp eax, 0xffffffff
mov dword [esi + 8], edi
je 0x4d0412
mov dword [esi + 0x90], 0
push eax
call fcn.004c7770
add esp, 4
mov ecx, dword [0x60b9f0]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne dl
cmp dword [0x60b9f4], 0xa
setge cl
mov ah, cl
xor ah, dl
or cl, dl
xor cl, 1
or cl, ah
test al, al
je 0x4d0382
test cl, cl
mov edi, dword [esi + 8]
jne 0x4d0436
nop word cs:[eax + eax]
jmp 0x4d0380
test cl, cl
mov ecx, dword [esi + 8]
je 0x4d03f0
mov eax, dword [ecx]
push 0
push dword [esi + 0xc]
call dword [eax + 0xc]
mov ecx, dword [esi + 8]
push dword [esi + 0xc]
call fcn.004bfb80
mov ecx, dword [esi + 8]
push dword [esi + 0xc]
call fcn.004bfda0
mov edx, dword [0x60b9f0]
mov edi, dword [0x60b9f4]
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
setne ah
cmp edi, 0xa
setl al
setge bh
cmp al, bl
jne 0x4d03f2
or bh, ah
je 0x4d03f2
nop dword [eax]
jmp 0x4d03e0
jmp 0x4d03f0
test edx, ecx
sete dl
setne cl
cmp edi, 0xa
setl ah
setge al
cmp ah, dl
mov edi, dword [esi + 8]
jne 0x4d0412
or al, cl
jne 0x4d0380
mov eax, dword [edi]
mov eax, dword [eax + 8]
mov dword [esi + 0x90], 0
mov ecx, edi
push dword [ebp + 0x10]
push dword [esi + 0xc]
call eax
test al, al
mov edi, dword [esi + 8]
je 0x4d0568
inc dword [edi + 0xa0]
call sub.KERNEL32.dll_GetCurrentThreadId
mov dword [edi + 0xa4], eax
mov eax, dword [0x60b6c8]
mov ecx, dword [0x60b6cc]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x10]
cmp ecx, 0xa
setl byte [esi + 0x28]
mov eax, 0x7ed0f1a7
mov edi, 0xd2574d27
mov ebx, 0x6ae0c3d4
nop dword [eax]
cmp eax, 0x6ae0c3d3
jg 0x4d04b0
cmp eax, 0xd2574d27
je 0x4d0530
cmp eax, 0x13ed310d
jne 0x4d0480
push dword [esi + 4]
call fcn.005cf94c
add esp, 4
mov eax, 0x6ae0c3d4
jmp 0x4d0480
cmp eax, 0x6ae0c3d4
je 0x4d04e5
cmp eax, 0x7ed0f1a7
jne 0x4d0480
movzx ecx, byte [esi + 0x10]
movzx eax, byte [esi + 0x28]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x13ed310d
cmovne eax, ebx
test cl, cl
mov ecx, 0x13ed310d
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x4d0480
push dword [esi + 4]
call fcn.005cf94c
add esp, 4
mov edx, dword [0x60b6c8]
mov ecx, dword [0x60b6cc]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x13ed310d
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4d0480
mov eax, dword [0x60b9f0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60b9f4], 0xa
setl cl
test cl, al
mov ebx, dword [esi + 8]
jne 0x4d0650
xor cl, al
je 0x4d0695
jmp 0x4d0650
mov eax, dword [0x60b6c8]
mov ecx, dword [0x60b6cc]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x10]
cmp ecx, 0xa
setl byte [esi + 0x28]
mov eax, 0x7ed0f1a7
mov edi, 0x6ae0c3d4
mov ebx, 0xd2574d27
nop word [eax + eax]
cmp eax, 0x6ae0c3d3
jg 0x4d05d0
cmp eax, 0xd2574d27
je 0x4d0649
cmp eax, 0x13ed310d
jne 0x4d05a0
push dword [esi + 4]
call fcn.005cf94c
add esp, 4
mov eax, 0x6ae0c3d4
jmp 0x4d05a0
cmp eax, 0x6ae0c3d4
je 0x4d0605
cmp eax, 0x7ed0f1a7
jne 0x4d05a0
movzx ecx, byte [esi + 0x10]
movzx eax, byte [esi + 0x28]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x13ed310d
cmovne eax, edi
test cl, cl
mov ecx, 0x13ed310d
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x4d05a0
push dword [esi + 4]
call fcn.005cf94c
add esp, 4
mov eax, dword [0x60b6c8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x13ed310d
cmove eax, ebx
cmp dword [0x60b6cc], 0xa
mov edx, 0x13ed310d
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x4d05a0
xor ebx, ebx
jmp 0x4d0aaa
lea edi, [ebx + 0xb4]
lea eax, [esi + 0x50]
mov ecx, edi
push eax
call fcn.004d0c40
lea eax, [esi + 0x28]
mov ecx, edi
push eax
call fcn.004d10c0
mov ecx, dword [0x60b9f0]
mov eax, dword [0x60b9f4]
lea edx, [ecx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
and edx, ecx
sete cl
cmp eax, 0xa
setl ch
test ch, cl
jne 0x4d06b3
xor ch, cl
jne 0x4d06b3
lea edi, [ebx + 0xb4]
lea eax, [esi + 0x50]
mov ecx, edi
push eax
call fcn.004d0c40
lea eax, [esi + 0x28]
mov ecx, edi
push eax
call fcn.004d10c0
jmp 0x4d0650
mov dword [esi + 4], eax
mov edi, dword [esi + 0x50]
cmp edi, dword [esi + 0x28]
je 0x4d07fb
mov eax, dword [ebp + 8]
add eax, 0x30
mov dword [esi + 0x1c], eax
mov dword [esi + 0x90], 0xffffffff
jmp 0x4d06ef
mov edi, dword [esi + 0x50]
cmp edi, dword [esi + 0x28]
mov ebx, dword [esi + 8]
je 0x4d07f2
add edi, 0x10
mov dword [esi + 0x90], 0xffffffff
mov ebx, dword [esi + 0x1c]
mov ecx, ebx
push edi
lea eax, [esi + 0x10]
push eax
call fcn.004d1290
mov ecx, ebx
lea eax, [esi + 0x20]
push eax
call fcn.004d10c0
mov eax, dword [esi + 0x10]
cmp eax, dword [esi + 0x20]
jne 0x4d072b
mov ecx, dword [esi + 0x1c]
push edi
lea eax, [esi + 0x10]
push eax
call fcn.004d1460
mov eax, dword [0x60b9f0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60b9f4], 0xa
setl cl
test cl, al
jne 0x4d0757
xor cl, al
je 0x4d07f0
lea ecx, [esi + 0x50]
call fcn.004d56b0
mov ecx, dword [0x60b9f0]
mov eax, dword [0x60b9f4]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete dl
mov dword [esi + 4], eax
cmp eax, 0xa
setl dh
test dh, dl
jne 0x4d06e0
xor dh, dl
lea edi, [esi + 0x50]
jne 0x4d06e0
nop word cs:[eax + eax]
mov ecx, edi
call fcn.004d56b0
mov ecx, edi
call fcn.004d56b0
mov ecx, dword [0x60b9f0]
mov eax, dword [0x60b9f4]
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete bh
mov dword [esi + 4], eax
cmp eax, 0xa
setge bl
setl al
xor al, bh
jne 0x4d06e0
or bl, dl
test bl, 1
jne 0x4d07a0
jmp 0x4d06e0
jmp 0x4d07f0
lea edx, [ecx - 1]
imul edx, ecx
and edx, 1
test edx, edx
setne cl
sete dl
cmp dword [esi + 4], 0xa
setge al
setl ah
xor ah, dl
jne 0x4d0822
or al, cl
je 0x4d0822
nop word cs:[eax + eax]
jmp 0x4d0820
mov dword [esi + 0x90], 0xffffffff
lea ecx, [esi + 2]
lea edx, [esi + 0x28]
nop word cs:[eax + eax]
mov byte [esi + 3], 0
movzx eax, byte [ebx + 0x168]
or al, 0x3e
xor al, 0x3f
mov byte [esi + 2], al
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ecx
lea edi, [esi + 3]
mov dword [esi + 0x18], edi
mov ecx, edx
lea eax, [esi + 0x10]
push eax
call fcn.004d1660
mov eax, dword [0x60b9f0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60b9f4], 0xa
setl cl
test cl, al
jne 0x4d08c9
xor cl, al
jne 0x4d08c9
mov byte [esi + 3], 0
mov ebx, dword [esi + 8]
movzx eax, byte [ebx + 0x168]
or al, 0xbc
xor al, 0xbd
mov byte [esi + 2], al
mov dword [esi + 0x10], ebx
lea eax, [esi + 2]
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], edi
lea edi, [esi + 0x28]
mov ecx, edi
lea eax, [esi + 0x10]
push eax
call fcn.004d1660
lea ecx, [esi + 2]
mov edx, edi
jmp 0x4d0840
lea ecx, [esi + 0x50]
lea ebx, [esi + 0x28]
push ebx
call fcn.004d6890
mov byte [esi + 0x78], 1
mov ecx, ebx
call fcn.004d6600
mov dword [esi + 0x1c], esp
sub esp, 0x2c
mov edi, esp
mov eax, dword [esi + 8]
mov dword [esi + 0x28], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x30], eax
lea eax, [esi + 2]
mov dword [esi + 0x34], eax
mov eax, dword [0x60b650]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete byte [esi + 0x20]
mov edx, dword [0x60b654]
sete bl
mov ecx, 0xc432ea9f
mov eax, 0x73d28046
cmove eax, ecx
cmp edx, 0xa
mov edx, 0x73d28046
cmovge eax, edx
mov edx, dword [ebp + 0x10]
mov dword [esi + 0x38], edx
setl dl
setl byte [esi + 0x10]
xor dl, bl
cmovne eax, ecx
mov edx, 0x947c86b6
mov dword [esi + 4], edi
nop word cs:[eax + eax]
cmp edx, 0x43eee597
jg 0x4d0980
cmp edx, 0x947c86b6
je 0x4d0997
cmp edx, 0xc432ea9f
jne 0x4d0960
jmp 0x4d09c5
cmp edx, 0x43eee598
je 0x4d09c1
cmp edx, 0x73d28046
jne 0x4d0960
mov edx, 0x43eee598
jmp 0x4d0960
movzx ebx, byte [esi + 0x20]
movzx edx, byte [esi + 0x10]
mov dh, bl
xor dh, dl
mov ecx, 0x73d28046
mov edi, 0x43eee598
cmovne ecx, edi
test dl, dl
mov edx, ecx
cmovne edx, edi
test bl, bl
cmove edx, ecx
mov edi, dword [esi + 4]
jmp 0x4d0960
mov edx, eax
jmp 0x4d0960
mov ecx, edi
add ecx, 4
mov dword [edi + 0x28], 0
mov dword [esi + 0x90], 2
mov dword [esi + 0x24], ecx
lea eax, [esi + 0x28]
push eax
call fcn.004d7020
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 4]
mov dword [ecx], eax
mov ecx, dword [esi + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
mov dword [esi + 0x90], 1
call eax
mov ebx, eax
mov esp, dword [esi + 0x1c]
mov byte [esi + 3], al
mov ecx, dword [ebp + 0x10]
cmp dword [ecx], 0
setne al
or al, bl
jne 0x4d0a1e
mov dword [ecx], 1
cmp byte [esi + 0x78], 0
je 0x4d0a3c
mov dword [esi + 0x90], 3
lea ecx, [esi + 0x50]
mov dword [esi + 4], ebx
call fcn.00522910
mov ebx, dword [esi + 4]
mov eax, dword [0x60b9f8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60b9fc], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x4d0a6b
or cl, al
jne 0x4d0aa0
jmp 0x4d0a6b
lea ecx, [esi + 0x50]
call fcn.004d6600
mov eax, dword [0x60b9f8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60b9fc], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x4d0aaa
or cl, al
je 0x4d0aaa
lea ecx, [esi + 0x50]
call fcn.004d6600
jmp 0x4d0a6b
mov eax, dword [esi + 0x88]
mov dword fs:[0], eax
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc