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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1f8
mov word [esp + 0xe6], 0x4c74
mov dword [esp + 0x1d8], 1
mov eax, dword [esp + 0x1d8]
mov dword [esp + 0xc0], 0x1000
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xd4], 0
mov edx, dword [esp + 0xd4]
mov dword [esp + 0xd0], 5
mov esi, dword [esp + 0xd0]
mov dword [esp + 0xcc], 0
mov dword [esp + 0xec], 0xe9
mov edi, dword [esp + 0xec]
mov dword [esp + 0x194], 0
mov dword [esp + 0x1dc], 0x56
mov ebx, dword [esp + 0x1dc]
mov byte [esp + 0xdd], 0xcd
mov dword [esp + 0xb0], 0x56
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x124], 0x56
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0x1f0], 0
mov dword [esp + 0x1e0], 0
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x1f0]
mov dword [esp + 0xe8], 0
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0xfc], 0
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x128], 0x96
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x128]
mov dword [esp + 0x1ac], 0x1056
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x1ac]
mov dword [esp + 0xa8], 0xfaa
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x118], 0xbaf
mov word [esp + 0x1e6], 0x1bf5
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x118]
mov dword [esp + 0xe0], 0
mov word [esp + 0xde], 0x3f9e
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x1a0]
and eax, 0
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x108], 0x56
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 0xbc], 0
mov dword [esp + 0x1b0], 2
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x1b0]
mov dword [esp + 0x1e8], 0x56
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x1e8]
mov dword [esp + 0xb8], 2
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x1a4]
and eax, 0
mov dword [esp + 0x1a4], eax
mov eax, dword [esp + 0x1a4]
mov dword [esp + 0x12c], 0
mov dword [esp + 0x1c8], 0x49
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0x198], 0
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x198]
mov byte [esp + 0x117], 0x42
mov dword [esp + 0xd8], 0x56
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x110], 0
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x110]
mov dword [esp + 0x190], 0
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x190]
mov dword [esp + 0x1d0], 0xffffffff
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp + 0xc8], 9
mov byte [esp + 0xf3], 0x6e
mov dword [esp + 0x100], 0
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x1a8], 0xe
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x1a8]
mov dword [esp + 0x1c4], 0
mov byte [esp + 0x1ef], 0xaf
mov byte [esp + 0x1bf], 0x7d
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x104], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x1d4], eax
mov dword [esp + 0xf4], 0
mov eax, dword [esp + 0x88]
mov dword [esp + 0x1b4], eax
mov byte [esp + 0x116], 0xbe
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x1b8], eax
mov eax, dword [esp + 0x104]
mov dword [esp + 0x10c], 0
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x90]
cmp eax, ecx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], edi
jne 0x70005604
mov ax, 0x4f75
sub ax, word [esp + 0xde]
mov ecx, dword [esp + 0x50]
mov dword [esp], ecx
mov edx, dword [esp + 0x54]
mov dword [esp + 4], edx
mov esi, dword [esp + 0x58]
mov dword [esp + 8], esi
mov word [esp + 0x32], ax
call fcn.70001e60
lea ecx, [esp + 0x116]
mov edx, dword [esp + 0x194]
or edx, ecx
mov dword [esp + 0x194], edx
mov di, word [esp + 0x32]
mov word [esp + 0xde], di
mov dword [esp + 0x2c], eax
lea eax, [0x7002bd42]
mov dword [esp], eax
call fcn.700016b0
lea ecx, [0x7002bc5c]
mov edx, dword [esp + 0x104]
add edx, eax
mov dword [esp + 0x104], edx
mov dword [esp], ecx
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
call fcn.70002e20
lea ecx, [0x7002bc6b]
mov dword [esp + 0x1c0], eax
mov dword [esp], ecx
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
call fcn.70002e20
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x104]
mov bl, byte [esp + 0xf3]
mov ecx, dword [esp + 0x12c]
and ecx, 0
mov dword [esp + 0x12c], ecx
xor bl, 0x54
mov byte [esp + 0xf3], bl
mov ecx, dword [esp + 0x94]
cmp eax, ecx
jne 0x700056c7
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 8], edx
call fcn.70001e60
mov si, 0
sub si, word [esp + 0x1e6]
mov word [esp + 0x1e6], si
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x194]
mov dword [esp + 0x194], eax
cmp dword [esp + 0x104], 0
jne 0x70005710
mov eax, dword [esp + 0xbc]
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x70]
mov dword [esp + 8], edx
call fcn.70001e60
mov dword [esp + 0x24], eax
lea eax, [esp + 0x18c]
lea ecx, [esp + 0xb4]
mov edx, dword [esp + 0x1c0]
mov esi, dword [esp + 0xac]
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.70003390
lea ecx, [esp + 0x130]
mov dword [esp], ecx
mov dword [esp + 0x20], eax
call fcn.70002e70
lea eax, [esp + 0x130]
mov ecx, dword [esp + 0x18c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.70003ad0
mov ecx, 0
mov edx, dword [esp + 0x104]
mov esi, ecx
sub esi, dword [esp + 0xf4]
sub ecx, dword [esp + 0xbc]
mov dword [esp + 0xf4], esi
mov dword [esp + 0xbc], ecx
mov ecx, dword [esp + 0x98]
cmp edx, ecx
mov dword [esp + 0x1c], eax
jne 0x700057e3
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov ecx, dword [esp + 0x78]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
call fcn.70001e60
mov bl, 0
mov bh, byte [esp + 0x1bf]
mov dword [esp + 0x194], 0
sub bl, bh
mov byte [esp + 0x1bf], bl
mov dword [esp + 0x18], eax
lea eax, [0x700046f0]
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x1d4]
mov esi, dword [esp + 0x9c]
add edx, esi
mov di, word [esp + 0xe6]
mov ebx, dword [esp + 0xf4]
mov dword [esp + 0xf4], ebx
xor di, 0x178f
mov word [esp + 0xe6], di
mov ebx, dword [esp + 0x1b4]
mov esi, dword [esp + 0xa0]
sub ebx, esi
mov esi, dword [esp + 0x1b8]
mov edi, dword [esp + 0x40]
sub esi, edi
mov edi, esp
mov dword [edi + 0xc], esi
mov dword [edi + 8], ebx
mov dword [edi + 4], edx
mov dword [edi], 0
mov dword [esp + 0x14], eax
call ecx
sub esp, 0x10
mov dword [esp + 0x1cc], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x1cc]
mov dword [esp + 0xc4], ecx
mov ecx, dword [esp + 0x120]
movzx ecx, byte [ecx]
mov edx, dword [esp + 0x34]
cmp ecx, edx
jne 0x700058e2
lea eax, [esp + 0xde]
lea ecx, [esp + 0x194]
mov edx, dword [esp + 0x120]
mov edx, dword [edx + 1]
mov bl, byte [esp + 0x116]
mov bh, cl
xor bl, bh
mov byte [esp + 0x116], bl
mov ecx, dword [esp + 0x38]
add ecx, edx
mov edx, dword [esp + 0x120]
mov si, word [esp + 0x1e6]
mov di, ax
sub di, si
add edx, ecx
mov word [esp + 0x1e6], di
mov dword [esp + 0x120], edx
mov eax, 0
sub eax, dword [esp + 0x194]
mov byte [esp + 0xdd], 0x74
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x19c], ecx
mov dword [esp + 0x194], eax
lea eax, [esp + 0xde]
mov ecx, dword [esp + 0x19c]
mov dx, word [esp + 0xe6]
mov si, ax
sub si, dx
mov byte [esp + 0xf3], 0x8d
mov word [esp + 0xde], si
mov eax, dword [esp + 0x44]
cmp ecx, eax
jae 0x700059da
lea eax, [esp + 0x100]
mov ecx, dword [esp + 0x19c]
mov edx, dword [esp + 0x120]
mov esi, dword [esp + 0xcc]
or esi, eax
mov dword [esp + 0xcc], esi
mov bl, byte [edx + ecx]
mov eax, dword [esp + 0x19c]
mov ecx, dword [esp + 0xc4]
mov byte [ecx + eax], bl
lea eax, [esp + 0xf3]
mov cx, word [esp + 0xe6]
mov edx, dword [esp + 0x194]
add edx, 0
mov si, ax
mov dword [esp + 0x194], edx
xor cx, si
mov word [esp + 0xe6], cx
mov eax, dword [esp + 0x19c]
mov edx, dword [esp + 0xa4]
add eax, edx
mov edi, dword [esp + 0x1e0]
add edi, 0
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1e0], edi
jmp 0x70005908
lea eax, [esp + 0xf3]
lea ecx, [esp + 0x130]
mov edx, dword [esp + 0xe0]
xor edx, 0
mov dword [esp + 0x100], edx
mov dword [esp], ecx
mov dword [esp + 0x10], eax
call dword [esp + 0x1cc]
mov eax, dword [esp + 0x1e0]
mov ecx, dword [esp + 0x10]
and eax, ecx
mov dword [esp + 0x1e0], eax
mov eax, dword [esp + 0xbc]
add eax, 0
mov dword [esp + 0x194], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret