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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x84
mov edi, edx
mov esi, ecx
mov ebp, dword [esp + 0xa0]
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x98]
mov dword [esp + 0x20], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x4c], 0
test ebp, ebp
je 0x257eb6
mov dword [ebp], 0
lea edx, [esp + 0x3c]
lea ebx, [esp + 0x28]
push ecx
push eax
push edx
push ebx
push esi
call fcn.00254730
add esp, 0x14
mov ebx, 0xffffffff
test eax, eax
jne 0x257f98
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x6c], eax
cmp eax, 0xd
ja 0x257efb
push 0x790887
jmp 0x257f8b
push 0xe
push 0x790895
push ebx
call fcn.004f8ba8
add esp, 0xc
test eax, eax
je 0x257f16
push 0x7908a4
jmp 0x257f8b
add ebx, 0xf
mov dword [esp + 0x68], ebx
lea ecx, [esp + 0x14]
lea eax, [esp + 0x20]
lea ebx, [esp + 0x64]
push ecx
push eax
push ebx
call fcn.00254f10
add esp, 0xc
test eax, eax
jne 0x257f7f
cmp dword [esp + 0x14], 0
je 0x257f7f
lea eax, [esp + 0x48]
lea ecx, [esp + 0x14]
push ecx
push eax
push ebx
call fcn.00254f10
add esp, 0xc
test eax, eax
jne 0x257f86
cmp dword [esp + 0x14], 0
je 0x257f86
lea eax, [esp + 0x50]
lea ecx, [esp + 0x60]
push eax
push ecx
push ebx
call fcn.00254f10
add esp, 0xc
test eax, eax
je 0x258027
push 0x7908e5
jmp 0x257f8b
push 0x7908bc
jmp 0x257f8b
push 0x7908d2
push 0xfffffffffffffff2
push esi
call fcn.002544a0
add esp, 0xc
mov ebx, eax
mov eax, dword [esp + 0x28]
test eax, eax
je 0x25801a
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x258012
mov edx, ecx
and edx, 7
je 0x257fd6
xor edi, edi
nop word cs:[eax + eax]
mov byte [eax + edi], 0
inc edi
cmp edx, edi
jne 0x257fc0
add eax, edi
mov edx, ecx
sub edx, edi
cmp ecx, 8
jae 0x257fdd
jmp 0x25800e
mov edx, ecx
cmp ecx, 8
jb 0x25800e
xor ecx, ecx
nop
mov byte [eax + ecx], 0
mov byte [eax + ecx + 1], 0
mov byte [eax + ecx + 2], 0
mov byte [eax + ecx + 3], 0
mov byte [eax + ecx + 4], 0
mov byte [eax + ecx + 5], 0
mov byte [eax + ecx + 6], 0
mov byte [eax + ecx + 7], 0
add ecx, 8
cmp edx, ecx
jne 0x257fe0
mov eax, dword [esp + 0x28]
push esi
push eax
call dword [esi + 0xc]
add esp, 8
mov eax, ebx
add esp, 0x84
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x60]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x80], eax
test edi, edi
je 0x258047
cmp byte [edi], 0
jne 0x258065
push 0x7908f4
push dword [esp + 0x24]
call fcn.004f8b80
add esp, 8
mov ebx, 0xffffffd0
test eax, eax
jne 0x257f98
mov ebx, dword [esp + 0x48]
push 0x7908f4
push ebx
call fcn.004f8b80
add esp, 8
test eax, eax
je 0x258097
push 0x7908f9
push ebx
call fcn.004f8b80
add esp, 8
test eax, eax
je 0x2580b6
push 0x790900
jmp 0x257f8b
push 0x7908f4
push dword [esp + 0x24]
call fcn.004f8b80
add esp, 8
test eax, eax
je 0x2580b6
push 0x79090f
jmp 0x257f8b
lea eax, [esp + 0x74]
push eax
lea ebx, [esp + 0x68]
push ebx
call fcn.00254e00
add esp, 8
test eax, eax
jne 0x258125
cmp dword [esp + 0x74], 1
jne 0x258125
mov eax, ebx
lea ebx, [esp + 0x5c]
lea ecx, [esp + 0x14]
push ecx
push ebx
push eax
call fcn.00254f10
add esp, 0xc
test eax, eax
jne 0x25812f
cmp dword [esp + 0x14], 0
je 0x25812f
lea eax, [esp + 0x14]
push eax
push ebx
lea eax, [esp + 0x6c]
push eax
call fcn.00254f10
add esp, 0xc
test eax, eax
setne cl
mov eax, dword [esp + 0x14]
test eax, eax
sete dl
or dl, cl
cmp dl, 1
jne 0x258139
push 0x79096c
jmp 0x257f8b
push 0x79091e
jmp 0x257f8b
push 0x79093c
jmp 0x257f8b
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x20]
test eax, eax
je 0x2581ce
push 0x7908f4
push eax
call fcn.004f8b80
add esp, 8
test eax, eax
je 0x2581ce
call fcn.00265c20
mov ebx, eax
mov eax, dword [eax]
test eax, eax
je 0x2583ff
mov edx, eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0xc], eax
add ebx, 4
xor ecx, ecx
mov eax, edx
jmp 0x258194
mov eax, dword [ebx]
add ebx, 4
test eax, eax
je 0x25834f
mov edx, dword [eax]
cmp byte [edx], 0
je 0x258187
push edx
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
mov dword [esp + 4], edx
call fcn.004f8b98
add esp, 4
push eax
push dword [esp + 4]
push dword [esp + 0x14]
call fcn.004f8d78
mov ecx, dword [esp + 0x14]
add esp, 0xc
test eax, eax
cmove ecx, dword [esp + 4]
jmp 0x258187
xor edi, edi
mov dword [esp], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
mov dword [esp + 4], 0
lea eax, [esp + 0x44]
lea ebx, [esp + 0x2c]
push eax
push ebx
call fcn.00254e00
add esp, 8
test eax, eax
jne 0x258291
lea eax, [esp + 0x40]
push eax
push ebx
call fcn.00254e00
add esp, 8
test eax, eax
jne 0x258291
mov eax, dword [esp + 0x44]
cmp eax, dword [esp + 0x40]
jne 0x258291
xor ebx, ebx
test ebp, ebp
je 0x2582a6
push esi
call fcn.00254d10
add esp, 4
mov dword [esp + 8], eax
test eax, eax
je 0x258518
push dword [esp + 0x34]
push esi
call fcn.00254b10
add esp, 8
mov ecx, dword [esp + 8]
mov dword [ecx], eax
test eax, eax
je 0x258619
push dword [esp + 0x34]
push dword [esp + 0x30]
push eax
call fcn.004f8d80
add esp, 0xc
mov eax, dword [esp + 0x30]
sub eax, dword [esp + 0x2c]
mov ecx, dword [esp + 8]
add eax, dword [ecx]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x34]
mov dword [ecx + 8], eax
mov dword [ebp], ecx
jmp 0x2582a6
push 0x790a21
push 0xfffffffffffffff2
push esi
call fcn.002544a0
add esp, 0xc
mov ebx, 0xffffffd0
cmp dword [esp + 4], 0
je 0x258319
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x25830e
mov edx, ecx
mov eax, dword [esp + 4]
and edx, 7
je 0x2582d7
xor ebp, ebp
mov eax, dword [esp + 4]
mov byte [eax + ebp], 0
inc ebp
cmp edx, ebp
jne 0x2582c6
add eax, ebp
mov ecx, dword [esp + 0x18]
sub ecx, ebp
cmp dword [esp + 0x18], 8
jb 0x25830e
xor edx, edx
mov byte [eax + edx], 0
mov byte [eax + edx + 1], 0
mov byte [eax + edx + 2], 0
mov byte [eax + edx + 3], 0
mov byte [eax + edx + 4], 0
mov byte [eax + edx + 5], 0
mov byte [eax + edx + 6], 0
mov byte [eax + edx + 7], 0
add edx, 8
cmp ecx, edx
jne 0x2582e0
push esi
push dword [esp + 8]
call dword [esi + 0xc]
add esp, 8
test edi, edi
je 0x25844e
mov eax, dword [esp + 0xc]
test eax, eax
je 0x258446
and eax, 7
je 0x258409
xor edx, edx
mov byte [edi + edx], 0
inc edx
cmp eax, edx
jne 0x258338
lea eax, [edi + edx]
mov ecx, dword [esp + 0xc]
sub ecx, edx
jmp 0x25840f
mov dword [esp + 8], ecx
test ecx, ecx
je 0x2583ff
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x1c], 0
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
add eax, ecx
mov dword [esp + 0x18], eax
push eax
push esi
call fcn.00254b10
add esp, 8
mov dword [esp + 4], eax
test eax, eax
je 0x2584cd
push 0x7908f9
push dword [esp + 0x4c]
call fcn.004f8b80
add esp, 8
test edi, edi
je 0x2584ed
test eax, eax
jne 0x2584ed
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x58]
lea ebx, [esp + 0x78]
push eax
push ecx
push ebx
call fcn.00254f10
add esp, 0xc
test eax, eax
jne 0x2583f3
lea eax, [esp + 0x54]
push eax
push ebx
call fcn.00254e00
add esp, 8
test eax, eax
je 0x25852f
push 0x7909b5
push 0xfffffffffffffff2
jmp 0x2584f4
push 0x790987
jmp 0x257f8b
mov eax, edi
mov ecx, dword [esp + 0xc]
cmp dword [esp + 0xc], 8
jb 0x258446
xor edx, edx
mov byte [eax + edx], 0
mov byte [eax + edx + 1], 0
mov byte [eax + edx + 2], 0
mov byte [eax + edx + 3], 0
mov byte [eax + edx + 4], 0
mov byte [eax + edx + 5], 0
mov byte [eax + edx + 6], 0
mov byte [eax + edx + 7], 0
add edx, 8
cmp ecx, edx
jne 0x258418
push esi
push edi
call dword [esi + 0xc]
add esp, 8
mov edi, dword [esp]
test edi, edi
je 0x257f98
mov eax, dword [esp + 0x10]
test eax, eax
je 0x2584c0
and eax, 7
je 0x25847f
xor edx, edx
mov ecx, dword [esp]
mov byte [ecx + edx], 0
inc edx
cmp eax, edx
jne 0x25846b
lea eax, [ecx + edx]
mov ecx, dword [esp + 0x10]
sub ecx, edx
jmp 0x258486
mov eax, dword [esp]
mov ecx, dword [esp + 0x10]
cmp dword [esp + 0x10], 8
mov edi, dword [esp]
jb 0x2584c0
xor edx, edx
mov byte [eax + edx], 0
mov byte [eax + edx + 1], 0
mov byte [eax + edx + 2], 0
mov byte [eax + edx + 3], 0
mov byte [eax + edx + 4], 0
mov byte [eax + edx + 5], 0
mov byte [eax + edx + 6], 0
mov byte [eax + edx + 7], 0
add edx, 8
cmp ecx, edx
jne 0x258492
push esi
push edi
call dword [esi + 0xc]
add esp, 8
jmp 0x257f98
xor edi, edi
push 0x7909a1
push 0xfffffffffffffff2
push esi
call fcn.002544a0
add esp, 0xc
mov ebx, eax
mov dword [esp], 0
jmp 0x2582a6
push 0x7909d4
push 0xffffffffffffffd0
push esi
call fcn.002544a0
add esp, 0xc
mov ebx, eax
push esi
push dword [esp + 8]
call dword [esi + 0xc]
add esp, 8
xor edi, edi
mov dword [esp], 0
jmp 0x2582a6
push 0x790a4f
push 0xfffffffffffffffa
push esi
call fcn.002544a0
add esp, 0xc
mov ebx, eax
jmp 0x2582a6
push edi
call fcn.004f8b98
add esp, 4
push dword [esp + 0x54]
push dword [esp + 0x1c]
push dword [esp + 0xc]
push dword [esp + 0x58]
push dword [esp + 0x68]
push eax
push edi
call fcn.002646a0
add esp, 0x1c
test eax, eax
js 0x25863d
mov eax, dword [esp + 8]
mov eax, dword [eax + 8]
mov dword [esp + 0x24], eax
push dword [esp + 0xc]
push esi
call fcn.00254b10
add esp, 8
test eax, eax
je 0x258649
mov edi, eax
push dword [esp + 0x10]
push esi
call fcn.00254b10
add esp, 8
mov dword [esp], eax
test eax, eax
je 0x258655
push dword [esp + 0xc]
mov ebx, dword [esp + 8]
push ebx
push edi
call fcn.004f8d80
add esp, 0xc
add ebx, dword [esp + 0xc]
push dword [esp + 0x10]
push ebx
mov ebx, dword [esp + 8]
push ebx
call fcn.004f8d80
add esp, 0xc
lea edx, [esp + 0x1c]
lea eax, [esp + 0x40]
lea ecx, [esp + 0x44]
push edx
push 0
push eax
push edi
push ecx
push ebx
mov eax, dword [esp + 0x20]
push eax
push esi
call dword [eax + 0x18]
add esp, 0x20
mov ebx, 0xfffffff4
test eax, eax
jne 0x2582a6
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x38], 0
mov eax, ecx
xor edx, edx
div dword [esp + 0x24]
test edx, edx
je 0x258668
lea eax, [esp + 0x1c]
push eax
push esi
mov eax, dword [esp + 0x10]
call dword [eax + 0x20]
add esp, 8
jmp 0x2582a6
push 0x790a4f
push 0xfffffffffffffffa
push esi
call fcn.002544a0
add esp, 0xc
mov ebx, eax
push dword [esp + 8]
push esi
call fcn.00254d30
add esp, 8
jmp 0x2582a6
push 0x79090f
push 0xfffffffffffffff4
jmp 0x2584f4
xor edi, edi
push 0x7909f0
jmp 0x2584d4
mov dword [esp], 0
push 0x790a09
push 0xfffffffffffffff2
jmp 0x25851f
sub ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
add edx, eax
mov dword [esp + 0x70], edx
xor edx, edx
cmp eax, ecx
sete dl
add edx, edx
test eax, eax
mov eax, 1
cmove edx, eax
push edx
lea ecx, [esp + 0x20]
push ecx
push dword [esp + 0x2c]
push dword [esp + 0x7c]
push esi
mov eax, dword [esp + 0x1c]
call dword [eax + 0x1c]
add esp, 0x14
test eax, eax
jne 0x258604
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x38]
add edx, eax
mov ecx, dword [esp + 0x34]
sub ecx, eax
mov dword [esp + 0x38], edx
cmp edx, ecx
jbe 0x25866c
lea eax, [esp + 0x1c]
push eax
push esi
mov eax, dword [esp + 0x10]
call dword [eax + 0x20]
add esp, 8
jmp 0x2581f7