Function at 0x4803c6
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov dword [esp + 0x70], ecx
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
mov edi, dword [ebp + 0xc]
mov eax, 0xc9abf03d
cmp eax, 0xf4fbbd9f
jg 0x480433
cmp eax, 0xc00c79cf
jg 0x480498
cmp eax, 0xa5dbc6ec
jle 0x480527
cmp eax, 0xb0c281b6
jg 0x480687
cmp eax, 0xa9102a9a
jg 0x480873
cmp eax, 0xa5dbc6ed
je 0x480b66
cmp eax, 0xa8e22e73
jne 0x4803e7
mov eax, 0x1821858a
jmp 0x4803e7
cmp eax, 0x33cd108e
jg 0x4804d9
cmp eax, 0x202d9443
jle 0x48059d
cmp eax, 0x2d8f32e8
jg 0x4806bd
cmp eax, 0x253782ed
jg 0x480893
cmp eax, 0x202d9444
je 0x480bb0
cmp eax, 0x216e4d7e
jne 0x4803e7
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x20]
push dword [esp + 0x38]
push dword [esp + 0x40]
push dword [eax]
call fcn.0041f7da
add esp, 0xc
mov eax, 0xdd3932cf
jmp 0x4803e7
cmp eax, 0xd7e1fa09
jle 0x480607
cmp eax, 0xdd3932ce
jg 0x4806f5
cmp eax, 0xd95a031b
jg 0x4808dd
cmp eax, 0xd7e1fa0a
je 0x480c05
cmp eax, 0xd8ba5c68
jne 0x4803e7
mov eax, 0x2d8f32e9
jmp 0x4803e7
cmp eax, 0x4950c62f
jle 0x48063d
cmp eax, 0x5ccd6d46
jg 0x48075f
cmp eax, 0x504a6cfc
jg 0x480943
cmp eax, 0x4950c630
je 0x480c0f
cmp eax, 0x4e319f25
jne 0x4803e7
cmp byte [esp + 0xb], 0
mov eax, 0xa8e22e73
mov ecx, 0xf8048335
cmovne eax, ecx
jmp 0x4803e7
cmp eax, 0x8fa1ba03
jle 0x48078a
cmp eax, 0x9bea15c0
jg 0x4809a4
cmp eax, 0x8fa1ba04
je 0x480c26
cmp eax, 0x8fc5e3e1
jne 0x4803e7
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xc9ef0071
mov esi, 0x32253444
cmove eax, esi
cmp dword [0x4a81c4], 0xa
setl dl
mov ebx, 0xc9ef0071
cmovge eax, ebx
xor dl, cl
mov dword [esp + 0x58], edi
mov ecx, dword [esp]
mov dword [esp + 0x5c], ecx
cmovne eax, esi
jmp 0x4803e7
cmp eax, 0xfefae0c7
jle 0x4807c9
cmp eax, 0x4237c90
jg 0x4809d1
cmp eax, 0xfefae0c8
je 0x480c79
cmp eax, 0x1e39791
jne 0x4803e7
mov esi, dword [esp + 0x1c]
add dword [esp + 0x2c], esi
mov ecx, 0x85a7a39b
add edi, ecx
mov eax, 0x502c12ca
mov edx, dword [esp]
adc edx, eax
sub edi, esi
sbb edx, dword [esp + 0x28]
sub edi, ecx
sbb edx, eax
mov dword [esp], edx
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x30]
sub dword [ecx], esi
mov eax, dword [eax + 0x20]
add dword [eax], esi
mov eax, 0xa9102a9b
jmp 0x4803e7
cmp eax, 0xc9ef0070
jle 0x480809
cmp eax, 0xd4e5e2b7
jg 0x480a01
cmp eax, 0xc9ef0071
je 0x480c83
cmp eax, 0xcc7a88bd
jne 0x4803e7
mov eax, 0xb0c281b7
jmp 0x4803e7
cmp eax, 0x3d4e699d
jle 0x48083b
cmp eax, 0x4742ec00
jg 0x480a21
cmp eax, 0x3d4e699e
je 0x480c8d
cmp eax, 0x4263aa14
jne 0x4803e7
mov eax, edi
neg eax
mov eax, 0
sbb eax, dword [esp]
mov eax, 0xa9102a9b
mov ecx, 0x26df36bd
cmovl eax, ecx
jmp 0x4803e7
cmp eax, 0xbdd972d3
jg 0x480a4b
cmp eax, 0xb0c281b7
je 0x480cc1
cmp eax, 0xb253c06b
jne 0x4803e7
mov dword [esp + 0x50], edi
mov eax, dword [esp]
mov dword [esp + 0x54], eax
mov eax, 0xfc376b0f
jmp 0x4803e7
cmp eax, 0x32253443
jg 0x480a94
cmp eax, 0x2d8f32e9
je 0x480a17
cmp eax, 0x2e0eb192
jne 0x4803e7
cmp byte [esp + 0xf], 0
mov eax, 0x3c8a7467
mov ecx, 0xf34fe9b8
cmovne eax, ecx
jmp 0x4803e7
cmp eax, 0xf219ec3d
jg 0x480ab4
cmp eax, 0xdd3932cf
je 0x480d09
cmp eax, 0xe21cadc9
jne 0x4803e7
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x6760cde5
mov esi, 0x7941ce01
cmove eax, esi
cmp dword [0x4a81c4], 0xa
setl dl
mov ebx, 0x6760cde5
cmovge eax, ebx
xor dl, cl
mov dword [esp + 0x40], edi
mov ecx, dword [esp]
mov dword [esp + 0x44], ecx
cmovne eax, esi
jmp 0x4803e7
cmp eax, 0x724af3f3
jg 0x480af2
cmp eax, 0x5ccd6d47
je 0x480d56
cmp eax, 0x6760cde5
jne 0x4803e7
mov eax, 0xe21cadc9
jmp 0x4803e7
cmp eax, 0x8ce1769b
jle 0x480b12
cmp eax, 0x8ce1769c
je 0x480d60
cmp eax, 0x8e53cf53
jne 0x4803e7
xor eax, eax
cmp eax, dword [esp + 0x48]
mov eax, 0
sbb eax, dword [esp + 0x4c]
setl byte [esp + 0xc]
mov eax, 0x3cec010a
jmp 0x4803e7
cmp eax, 0xf4fbbda0
je 0x480d8c
cmp eax, 0xf8048335
je 0x480d96
cmp eax, 0xfc376b0f
jne 0x4803e7
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
cmp eax, dword [esp + 0x1c]
sbb ecx, dword [esp + 0x28]
setl byte [esp + 0xd]
mov eax, 0x9d3f9bd4
jmp 0x4803e7
cmp eax, 0xc00c79d0
je 0x480dca
cmp eax, 0xc3d3f437
je 0x480dfd
cmp eax, 0xc9abf03d
jne 0x4803e7
mov eax, 0x33cd108f
mov ecx, dword [ebp + 8]
mov dword [esp + 0x2c], ecx
jmp 0x4803e7
cmp eax, 0x33cd108f
je 0x480e17
cmp eax, 0x3c8a7467
je 0x480e48
cmp eax, 0x3cec010a
jne 0x4803e7
cmp byte [esp + 0xc], 0
mov eax, 0xa9102a9b
mov ecx, 0xb253c06b
cmovne eax, ecx
jmp 0x4803e7
cmp eax, 0xa9102a9b
je 0x480e6d
cmp eax, 0xae18cdd7
jne 0x4803e7
mov eax, 0x3c8a7467
jmp 0x4803e7
cmp eax, 0x253782ee
je 0x480eb2
cmp eax, 0x26df36bd
jne 0x4803e7
mov eax, dword [0x4a81c0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xf4fbbda0
mov esi, 0x202d9444
cmove eax, esi
cmp dword [0x4a81c4], 0xa
mov edx, 0xf4fbbda0
jmp 0x480fb9
cmp eax, 0xd95a031c
je 0x480eda
cmp eax, 0xdac9e457
jne 0x4803e7
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
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, 0xfefae0c8
mov esi, 0x33068e22
cmovne edx, esi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, esi
cmp ecx, 0xa
cmovge eax, edx
mov dword [esp + 0x60], edi
mov ecx, dword [esp]
mov dword [esp + 0x64], ecx
jmp 0x4803e7
cmp eax, 0x504a6cfd
je 0x480ee4
cmp eax, 0x54704dad
jne 0x4803e7
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
sub eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
sbb ecx, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xa5dbc6ed
mov esi, 0xd8ba5c68
cmove eax, esi
cmp dword [0x4a81c4], 0xa
mov edx, 0xa5dbc6ed
jmp 0x480fb9
cmp eax, 0x9bea15c1
je 0x480f02
cmp eax, 0x9d3f9bd4
jne 0x4803e7
cmp byte [esp + 0xd], 0
mov eax, 0x4237c91
mov ecx, 0x3d4e699e
cmovne eax, ecx
jmp 0x4803e7
cmp eax, 0x4237c91
je 0x480f45
cmp eax, 0x1821858a
jne 0x4803e7
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x20]
cmp dword [ecx], 0
je 0x480fd3
mov eax, dword [eax + 0x30]
mov eax, dword [eax]
jmp 0x480fd5
cmp eax, 0xd4e5e2b8
je 0x480f5f
cmp eax, 0xd67aa90d
jne 0x4803e7
mov eax, 0xf219ec3e
jmp 0x4803e7
cmp eax, 0x4742ec01
je 0x480f69
cmp eax, 0x47a7a30e
jne 0x4803e7
cmp dword [esp + 0x7c], 0
setne byte [esp + 0xf]
mov eax, 0x2e0eb192
jmp 0x4803e7
cmp eax, 0xbdd972d4
je 0x480f77
cmp eax, 0xbe79bb93
jne 0x4803e7
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x4742ec01
mov esi, 0x87ebb4e5
jmp 0x480f30
cmp eax, 0x32253444
je 0x480f81
cmp eax, 0x33068e22
jne 0x4803e7
mov eax, 0x504a6cfd
jmp 0x4803e7
cmp eax, 0xf219ec3e
je 0x480f8b
cmp eax, 0xf34fe9b8
jne 0x4803e7
mov eax, dword [esp + 4]
push dword [eax + 0x4c]
push edi
push 1
push dword [esp + 0x38]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add esp, 0x10
mov dword [esp + 0x80], eax
mov eax, 0x8ce1769c
jmp 0x4803e7
cmp eax, 0x724af3f4
je 0x480fc9
cmp eax, 0x7941ce01
jne 0x4803e7
mov eax, 0x253782ee
jmp 0x4803e7
cmp eax, 0x87ebb4e5
jne 0x480ff5
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x4c]
mov dword [esp + 0x7c], eax
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x4742ec01
mov ebx, 0xd95a031c
cmove eax, ebx
cmp dword [0x4a81c4], 0xa
mov edx, 0x4742ec01
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x4803e7
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
sub eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
sbb ecx, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
mov eax, 0x54704dad
jmp 0x4803e7
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
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, 0xf4fbbda0
mov esi, 0x5ccd6d47
cmovne edx, esi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, esi
cmp ecx, 0xa
cmovge eax, edx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x4c], ecx
jmp 0x4803e7
mov eax, 0x1e39791
jmp 0x4803e7
cmp byte [esp + 0xe], 0
mov eax, 0x3c8a7467
mov ecx, 0xbe79bb93
cmovne eax, ecx
jmp 0x4803e7
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x724af3f4
mov esi, 0xbdd972d4
cmovne ebx, esi
test edx, eax
mov eax, ebx
cmove eax, esi
cmp ecx, 0xa
cmovge eax, ebx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x6c], ecx
jmp 0x4803e7
mov eax, 0xdac9e457
jmp 0x4803e7
mov eax, 0x8fc5e3e1
jmp 0x4803e7
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xc9ef0071
mov esi, 0x8fc5e3e1
cmove eax, esi
cmp dword [0x4a81c4], 0xa
mov edx, 0xc9ef0071
jmp 0x480fb9
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
cmp dword [eax + 0x38], 0
setne byte [esp + 0xb]
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xcc7a88bd
mov esi, 0x4e319f25
cmove eax, esi
cmp dword [0x4a81c4], 0xa
mov edx, 0xcc7a88bd
jmp 0x480fb9
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x20]
push dword [esp + 0x38]
push dword [esp + 0x40]
push dword [eax]
call fcn.0041f7da
add esp, 0xc
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x216e4d7e
mov esi, 0xd7e1fa0a
cmove eax, esi
cmp dword [0x4a81c4], 0xa
mov edx, 0x216e4d7e
jmp 0x480fb9
mov eax, 0x8e53cf53
jmp 0x4803e7
mov ecx, 0x29c0eca1
sub edi, ecx
mov eax, 0x88ee1854
mov edx, dword [esp]
sbb edx, eax
sub edi, dword [esp + 0x80]
sbb edx, 0
add edi, ecx
adc edx, eax
mov dword [esp], edx
mov eax, 0xae18cdd7
jmp 0x4803e7
mov eax, 0x202d9444
jmp 0x4803e7
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x6760cde5
mov esi, 0xe21cadc9
cmove eax, esi
cmp dword [0x4a81c4], 0xa
mov edx, 0x6760cde5
jmp 0x480fb9
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xa5dbc6ed
mov esi, 0x54704dad
jmp 0x480f30
mov eax, dword [esp + 0x58]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x28], eax
mov eax, 0xd4e5e2b8
jmp 0x4803e7
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
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, 0xcc7a88bd
mov esi, 0xb0c281b7
jmp 0x480e9c
mov eax, dword [esp + 0x78]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x24], eax
mov dword [esp + 0x10], edi
mov eax, dword [esp]
mov dword [esp + 0x14], eax
mov eax, 0xc00c79d0
jmp 0x4803e7
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
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, 0xfefae0c8
mov esi, 0xdac9e457
cmovne edx, esi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, esi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4803e7
mov ecx, dword [esp + 4]
push dword [esp + 0x44]
push dword [esp + 0x44]
push dword [esp + 0x34]
call dword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::xsputn_char_const___long_long___int64__]
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], edx
mov eax, 0xd67aa90d
jmp 0x4803e7
mov eax, 0x47a7a30e
jmp 0x4803e7
xor eax, eax
cmp eax, dword [esp + 0x60]
mov eax, 0
sbb eax, dword [esp + 0x64]
setl byte [esp + 0xe]
mov eax, 0x4950c630
jmp 0x4803e7
mov edx, dword [0x4a81c0]
mov ecx, dword [0x4a81c4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x216e4d7e
mov esi, 0xdd3932cf
cmovne ebx, esi
test edx, eax
mov eax, ebx
cmove eax, esi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x4803e7
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
mov eax, 0x9bea15c1
jmp 0x4803e7
mov eax, 0x4237c91
jmp 0x4803e7
mov eax, dword [esp + 4]
mov eax, 0x87ebb4e5
jmp 0x4803e7
mov eax, 0x8476d405
jmp 0x4803e7
mov eax, 0xc3d3f437
jmp 0x4803e7
mov eax, dword [0x4a81c0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x724af3f4
mov esi, 0x8fa1ba04
cmove eax, esi
cmp dword [0x4a81c4], 0xa
mov edx, 0x724af3f4
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, esi
jmp 0x4803e7
mov eax, 0x8fa1ba04
jmp 0x4803e7
xor eax, eax
mov dword [esp + 0x1c], eax
sar eax, 0x1f
mov dword [esp + 0x28], eax
mov eax, 0x4263aa14
mov dword [esp + 0x78], edi
mov ecx, dword [esp]
mov dword [esp + 0x74], ecx
jmp 0x4803e7
cmp eax, 0x8476d405
jne 0x4803e7
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc