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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x2a8
mov eax, dword [0x44e834]
xor eax, esp
mov dword [esp + 0x2a4], eax
lea eax, [esp + 0x1a4]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
lea eax, [esp + 0xa4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
mov eax, 0x565b27f3
mov dword [esp + 8], 0
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
cmp dword [esp + 0x68], 0
mov eax, 0x945eff2d
mov ecx, 0xc757c272
cmove eax, ecx
nop
cmp eax, 0xb4fca01
jg 0x4010b0
cmp eax, 0xd0c4c09a
jle 0x401150
cmp eax, 0xea6ad430
jle 0x4013bf
cmp eax, 0xf89850c8
jle 0x40141e
cmp eax, 0xf89850c9
je 0x401439
cmp eax, 0xfdf80a1e
jne 0x401060
mov eax, 0x28c7b002
cmp eax, 0xb4fca01
jle 0x401067
nop word cs:[eax + eax]
cmp eax, 0x4028f29d
jg 0x401100
cmp eax, 0x1f9e2ba6
jg 0x4011a4
cmp eax, 0xb4fca02
je 0x401477
cmp eax, 0xbb15c0c
je 0x401cf4
cmp eax, 0x1755d4a2
jne 0x401060
mov eax, 0xdfe867e1
mov dword [esp + 0xc], 0
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
cmp eax, 0x7403f916
jg 0x4011fe
cmp eax, 0x4028f29e
je 0x401767
cmp eax, 0x55d3a22e
je 0x401d35
cmp eax, 0x565b27f3
jne 0x401060
mov eax, dword [esp + 8]
mov ecx, 0xa0b4279f
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x74]
cmp eax, 0x100
mov eax, 0x87599892
jmp 0x402049
cmp eax, 0xa0b4279e
jg 0x401390
cmp eax, 0x87599892
je 0x40194e
cmp eax, 0x945eff2d
je 0x401d59
cmp eax, 0x9c7a57c4
jne 0x401060
mov eax, dword [esp + 0x10]
mov ecx, 0x1f9e2ba7
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x78]
cmp eax, 0x100
mov eax, 0x3fcebbe4
jmp 0x402049
cmp eax, 0x1f9e2ba7
je 0x401973
cmp eax, 0x28c7b002
je 0x401d6e
cmp eax, 0x3fcebbe4
jne 0x401060
lea eax, [esp + 0x3c]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov eax, 0x1755d4a2
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
cmp eax, 0x7403f917
je 0x4019dc
cmp eax, 0x741e461e
je 0x401d9b
cmp eax, 0x7a78786e
jne 0x401060
mov eax, dword [esp + 0x70]
mov edi, dword [esp + 0x2bc]
mov al, byte [eax]
mov esi, dword [esp + 0x8c]
mov ch, byte [edi + esi]
mov ah, al
mov edx, eax
xor ah, 0xec
and dl, 0x8c
and ah, al
mov bl, ch
mov dh, ch
and ch, 5
not bl
and dh, 0xb1
mov byte [esp + 3], bl
and bl, 0x4e
or dh, bl
mov bl, dh
and dh, 0x4e
not bl
and bl, 0xb1
or dh, bl
mov bl, dh
and dh, 0xb4
not bl
and bl, 0x4b
or dh, bl
mov ebx, eax
not al
mov bh, dh
mov cl, al
xor dh, 0x43
and bl, 0x6f
xor bh, 0x84
and cl, 0x73
and dh, 0x73
and bh, 0x8c
or dl, cl
or bh, dh
xor bh, dl
mov dl, ah
and ah, 0x77
mov cl, bh
not dl
xor cl, al
and al, 0x90
or bl, al
and cl, bh
mov al, bl
xor bl, 0x80
or bl, 0x13
not al
mov dh, bl
or bl, dl
and dl, 0x88
and al, 0x64
and dh, 0x88
or ah, dl
not bl
or al, dh
xor ah, al
or bl, ah
mov ah, byte [esp + 3]
mov al, bl
and bl, 0x7e
not al
and al, 0x81
or bl, al
mov dl, ah
mov al, bl
xor bl, 0x24
and dl, 0xfa
xor al, 0x82
and bl, 0x34
or ch, dl
and al, 0xcb
or al, bl
mov dh, al
xor al, 0x30
xor dh, 1
and al, 0xfa
and dh, 5
or dh, al
xor dh, ch
mov ch, cl
and cl, 0xb0
not ch
not dh
mov al, ch
or dh, ah
or ch, 0x76
and al, 0x4f
mov ah, ch
or cl, al
mov al, dh
not ah
mov dl, cl
xor cl, 0x39
xor al, 0x89
and ah, 0x80
xor dl, 0xb0
and al, dh
and cl, dl
mov byte [esp + 3], al
mov ebx, edx
xor dl, dh
mov bh, cl
and cl, 0xe0
and bl, dh
not dh
not bh
and dh, 0x89
or dl, bl
mov al, bh
or bh, ch
and ch, 0x1f
and al, 0x1f
or ah, ch
not bh
or cl, al
xor ah, cl
or bh, ah
mov ah, byte [esp + 3]
mov al, ah
and al, dh
xor dh, ah
or dh, al
mov al, bh
not al
and al, dh
not dh
and dh, bh
or dh, al
mov eax, edx
and dl, 0x40
not al
and al, 0xbf
or dl, al
mov al, dh
xor dl, 0x40
and al, dl
xor dl, dh
or dl, al
mov eax, 0xea6ad431
mov byte [edi + esi], dl
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
cmp eax, 0xa0b4279f
je 0x401baa
cmp eax, 0xb44fdf61
je 0x401dde
cmp eax, 0xc757c272
jne 0x401060
mov ecx, dword [esp + 0x68]
call fcn.004042e0
jmp 0x402068
cmp eax, 0xd0c4c09b
je 0x401ed0
cmp eax, 0xdfe867e1
je 0x402028
cmp eax, 0xe053e19f
jne 0x401060
mov eax, dword [esp + 0x20]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x8c]
cmp ecx, dword [eax + 4]
mov eax, 0xf5e8a8d4
mov ecx, 0x7403f917
jmp 0x402049
cmp eax, 0xea6ad431
je 0x40104c
cmp eax, 0xf5e8a8d4
jne 0x401060
jmp 0x40207d
lea ecx, [esp + 0x24]
call fcn.0041d0b0
mov eax, dword [esp + 0x6c]
mov eax, dword [esp + 0x8c]
inc eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x20], eax
mov eax, 0xe053e19f
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x18], ecx
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
push str.IOS_BASE:
push 0x4502b0
call fcn.004020b0
add esp, 8
mov edx, dword [esp + 0x54]
mov ecx, eax
shl edx, 2
push edx
call fcn.00403260
mov ebp, eax
mov eax, dword [0x44f510]
lea ecx, [eax - 1]
imul ecx, eax
mov edx, ecx
mov eax, ecx
and ecx, 0xa300dfa1
not edx
and eax, 0x64cd7843
mov ebx, edx
and edx, 0x5cff205e
and ebx, 0x9b3287bc
or ecx, edx
or eax, ebx
mov ebx, eax
and eax, 0x9b3287bd
not ebx
and ebx, 0x64cd7842
or eax, ebx
mov ebx, eax
mov edx, eax
not ebx
and edx, 0xbe901d3
and ebx, 0xf416fe2c
or ebx, edx
mov edx, ecx
xor ecx, 0x5cff205e
xor edx, 0xa000de20
or eax, ecx
and ecx, 0xbe901d3
and edx, 0xf416fe2c
not eax
or edx, ecx
xor edx, ebx
or eax, edx
mov edx, dword [ebp]
mov ecx, eax
and eax, 0x67c04422
not ecx
and ecx, 0x983fbbdd
or eax, ecx
mov ebx, dword [edx + 4]
xor eax, 0x67c04422
mov eax, dword [0x44f514]
sete byte [esp + 0x94]
cmp eax, 0xa
mov eax, 0x10564942
setl byte [esp + 0x98]
nop word [eax + eax]
cmp eax, 0x33fc5574
jg 0x4015e0
cmp eax, 0xcd29ac8f
je 0x401bf8
cmp eax, 0x10564942
jne 0x401550
movzx eax, byte [esp + 0x94]
movzx ecx, byte [esp + 0x98]
mov esi, 0x3b9d619a
mov edi, 0x33fc5575
mov edx, eax
mov ah, cl
xor dl, 1
xor ah, 1
mov ch, dl
xor dl, ah
and ch, ah
and ah, cl
or dl, ch
mov ch, ah
xor ah, cl
and ch, cl
or ah, ch
xor ah, al
mov al, ah
and ah, dl
xor dl, 1
xor al, 1
mov ecx, edx
xor cl, al
and al, dl
or al, ah
and cl, dl
mov edx, eax
xor dl, cl
test al, 1
mov eax, 0x33fc5575
cmovne eax, esi
test cl, 1
cmove eax, edi
test dl, 1
cmovne eax, esi
cmp eax, 0x33fc5574
jle 0x40155b
nop dword [eax]
cmp eax, 0x33fc5575
je 0x40173f
cmp eax, 0x3b9d619a
jne 0x401550
mov eax, dword [ebp + ebx + 0x30]
mov ecx, dword [eax + 4]
mov dword [esp + 0xa0], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44f510]
mov edi, 0x33fc5575
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x8cc3c089
not eax
and eax, 0x733c3f76
or eax, ecx
mov edx, eax
mov ecx, eax
xor eax, 0x70281860
xor edx, 0x8cc3c089
xor ecx, 0x8cc3c088
and eax, 0xfceb98e1
and ecx, edx
and edx, 0x314671e
or edx, eax
mov eax, ecx
and ecx, 0x83f07be6
not eax
mov esi, eax
and esi, 0x7c0f8419
or ecx, esi
mov esi, edx
xor edx, 0xfceb98e0
xor esi, 0x3106306
or eax, edx
and edx, 0x7c0f8419
and esi, 0x83f07be6
not eax
or esi, edx
xor esi, ecx
or eax, esi
mov esi, 0xcd29ac8f
mov ecx, eax
mov edx, eax
and eax, 0xdebd44c8
not ecx
and edx, 0x21000a27
and ecx, 0x42b110
or edx, ecx
xor edx, 0x21000a27
or eax, edx
mov ecx, eax
and eax, 0x2142bb37
not ecx
and ecx, 0xdebd44c8
or eax, ecx
mov ecx, dword [0x44f514]
sete dl
setne ah
cmp ecx, 9
setg al
cmp ecx, 0xa
setl cl
and al, dl
and ah, cl
or al, ah
mov ah, cl
xor cl, dl
and ah, dl
mov edx, eax
xor dl, 1
or cl, ah
mov ah, dl
xor ah, cl
or cl, dl
xor cl, 1
or cl, ah
mov ah, cl
mov ch, cl
xor ah, 1
and ah, cl
xor ah, 1
xor ch, ah
or ah, cl
xor ah, 1
or ah, ch
mov cl, ah
and ah, dl
xor cl, 1
or dl, cl
and cl, al
or cl, ah
mov ch, dl
mov eax, 0x33fc5575
xor ch, cl
test cl, cl
cmovne eax, esi
test dl, 1
cmovne eax, edi
test ch, 1
cmove eax, esi
cmp eax, 0x33fc5574
jle 0x40155b
jmp 0x4015e0
mov eax, dword [ebp + ebx + 0x30]
mov ecx, dword [eax + 4]
mov dword [esp + 0xa0], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, 0x3b9d619a
cmp eax, 0x33fc5574
jle 0x40155b
jmp 0x4015e0
mov eax, dword [esp + 0x5c]
mov esi, eax
mov edi, eax
mov ecx, eax
xor esi, 0xb82c7956
not edi
or ecx, 0x47d386a9
and esi, eax
mov edx, edi
mov ebp, ecx
and edi, 0x2f8aff75
xor eax, 0xd075008a
mov ebx, esi
and ebp, 0x79ca13e3
and edx, 0x80246814
and esi, 0x8635ec1c
or eax, edi
not ebx
or edx, ebp
mov dword [esp + 4], eax
or ecx, ebx
and ebx, 0x79ca13e3
or esi, ebx
not ecx
xor esi, edx
or ecx, esi
mov edx, ecx
and ecx, 0xead2bea9
not edx
and edx, 0x152d4156
or ecx, edx
mov edx, eax
mov esi, ecx
xor ecx, 0x9011800
not edx
xor esi, 0x280704
and ecx, 0x5bd7d8fb
and esi, 0xa4282704
or esi, ecx
mov ecx, esi
xor esi, 0xb82d871
xor ecx, 0x80200000
and esi, 0x2f8aff75
and ecx, 0xd075008a
or esi, ecx
not esi
mov ecx, esi
or esi, 0xdc77d0ca
or ecx, 0xd075008a
mov ebp, ecx
xor ebp, 0xa3882fbf
and ebp, ecx
mov ebx, ebp
and ebp, 0x9512810
not ebx
mov edi, ebx
or ebx, esi
and edi, 0x268ad7e7
not ebx
or ebp, edi
mov edi, esi
and esi, 0x76aed7e7
not edi
and edi, 0x1002810
or edi, esi
mov esi, edx
or esi, 0xa3882fbf
xor edi, ebp
mov ebp, esi
or ebx, edi
mov edi, esi
not ebp
and edi, 0x1be04134
and ebp, 0x44179040
or ebp, edi
mov edi, eax
xor edi, 0xa3882fbf
and edi, edx
mov eax, edi
and edi, 0xe41fbecb
not eax
or esi, eax
and eax, 0x1be04134
or edi, eax
mov eax, ebx
not esi
and ebx, 0x11fde026
xor edi, ebp
not eax
mov ebp, ecx
and ecx, 0xc0c5509c
and eax, 0x2e021fd9
or esi, edi
not ebp
or ebx, eax
mov eax, esi
and esi, 0x91fde026
not eax
and eax, 0x6e021fd9
or esi, eax
mov eax, ebp
or ebp, edx
and edx, 0x3f3aaf63
and eax, 0x2f0aaf61
not ebp
xor esi, ebx
or ecx, eax
mov eax, dword [esp + 4]
and eax, 0xc0c5509c
or eax, edx
xor eax, ecx
or ebp, eax
mov eax, esi
not ebp
and eax, ebp
xor ebp, esi
or ebp, eax
mov ecx, ebp
mov eax, ebp
xor ecx, 0x2f8aff70
and eax, 0x2e00ca50
and ecx, ebp
not ebp
and ebp, 0x18a3520
or eax, ebp
xor eax, 0x2e00ca50
mov edx, eax
and edx, ecx
xor ecx, eax
lea eax, [esp + 0x9c]
or ecx, edx
mov dword [esp + 0x9c], ecx
lea ecx, [esp + 0x30]
push eax
call fcn.004097a0
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 4], eax
mov eax, 0x55d3a22e
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, 0x9c7a57c4
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov ecx, dword [esp + 0x78]
movzx eax, byte [esp + ecx + 0x1a4]
mov edx, eax
add edx, dword [esp + 0x7c]
mov edi, dword [esp + 0x78]
movzx esi, byte [esp + edi + 0xa4]
add esi, edx
mov edx, esi
sar edx, 0x1f
shr edx, 0x18
add edx, esi
and edx, 0xffffff00
sub esi, edx
mov dl, byte [esp + esi + 0x1a4]
mov dword [esp + 0x14], esi
mov byte [esp + ecx + 0x1a4], dl
mov byte [esp + esi + 0x1a4], al
mov eax, dword [esp + 0x78]
inc eax
mov dword [esp + 0x10], eax
mov eax, 0x9c7a57c4
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, dword [esp + 0x84]
lea ecx, [eax + 1]
sar ecx, 0x1f
shr ecx, 0x18
lea ecx, [eax + ecx + 1]
and ecx, 0xffffff00
neg ecx
lea eax, [eax + ecx + 1]
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0x54]
movzx eax, byte [esp + ecx + 0x1a4]
mov edx, dword [esp + 0x88]
add edx, eax
mov ebx, edx
sar ebx, 0x1f
shr ebx, 0x18
add ebx, edx
and ebx, 0xffffff00
sub edx, ebx
mov dword [esp + 0x58], edx
mov edx, dword [esp + 0x58]
mov bl, byte [esp + edx + 0x1a4]
mov byte [esp + ecx + 0x1a4], bl
mov byte [esp + edx + 0x1a4], al
movzx ecx, byte [esp + ecx + 0x1a4]
add ecx, eax
mov edx, ecx
mov eax, ecx
xor edx, 0x122
and eax, 0x14e
and edx, ecx
not ecx
and ecx, 0xad2a7eb1
mov ebx, edx
and edx, 0xffffff92
or eax, ecx
not ebx
mov ecx, eax
xor eax, 0x1007420
or eax, 0xaefe0add
xor ecx, 0x50000102
mov ebp, eax
or eax, ebx
and ebx, 0x24e19e6d
and ecx, 0x51006102
and ebp, 0x24e01e6d
or edx, ebx
not eax
or ecx, ebp
xor edx, ecx
or eax, edx
mov ecx, eax
and eax, 0x1c01ad1
not ecx
and ecx, 0xf42be52e
or eax, ecx
mov ecx, eax
mov edx, eax
xor eax, 0x668d56d0
xor ecx, 0x5ad5eff3
xor edx, 0x85220000
mov ebx, ecx
and edx, 0x85b70ac2
and eax, ecx
and ebx, 0x7a48f53d
or ebx, edx
mov ecx, ebx
mov edx, ebx
xor ebx, 0x81270a80
xor ecx, 0x7a48f53d
xor edx, 0xb9efb3e1
and ebx, 0x916f1b81
and edx, ecx
movzx esi, cl
and ecx, 0x6e90e47e
mov ebp, edx
or ecx, ebx
and ebp, eax
xor eax, edx
xor ecx, 0x916f1b7e
or eax, ebp
or esi, ecx
mov edx, eax
mov ecx, esi
and eax, 0x3c58b9dc
and esi, 0x240c324b
not edx
not ecx
and edx, 0xc3a74623
and ecx, 0xdbf3cdb4
or eax, edx
or esi, ecx
mov ebx, eax
mov ecx, esi
xor esi, 0xdbf3cdb4
and eax, 0x2e095c6a
not ebx
xor ecx, 0x2408104a
mov ebp, ebx
or ebx, esi
and esi, 0xd1f6a395
and ecx, 0x2e095c6a
and ebp, 0xd1f6a395
or ecx, esi
not ebx
or eax, ebp
xor ecx, eax
or ebx, ecx
mov ecx, 0xbb15c0c
mov eax, ebx
and ebx, 0xb4edaf2f
not eax
and eax, 0x4b1250d0
or ebx, eax
mov eax, 0xd0c4c09b
xor ebx, 0xb4edaf2f
mov dword [esp + 0x5c], ebx
cmp dword [esp + 0x5c], 0
cmovg eax, ecx
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x74]
mov byte [esp + ecx + 0x1a4], al
mov eax, dword [esp + 0x74]
cdq
idiv dword [esp + 0x2c8]
mov eax, dword [esp + 0x2c4]
mov al, byte [eax + edx]
mov ecx, dword [esp + 0x74]
mov byte [esp + ecx + 0xa4], al
mov eax, dword [esp + 0x74]
inc eax
mov dword [esp + 8], eax
mov eax, 0x565b27f3
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
lea eax, [esp + 0x9c]
push eax
call fcn.00414f40
add esp, 4
mov edx, dword [eax]
mov ecx, eax
push 0xa
call dword [edx + 0x20]
mov ebx, eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x94], eax
mov eax, 0x63e45b60
nop word cs:[eax + eax]
cmp eax, 0x418db840
jg 0x401c90
cmp eax, 0xa136a264
je 0x401c69
cmp eax, 0xccd6bf4a
jne 0x401c30
mov eax, dword [esp + 0x98]
mov eax, dword [eax]
mov eax, dword [eax]
mov ecx, dword [esp + 0x98]
push 1
call eax
mov eax, 0x418db841
cmp eax, 0x418db840
jle 0x401c37
jmp 0x401c90
mov ecx, dword [esp + 0x94]
mov eax, dword [ecx]
call dword [eax + 8]
mov dword [esp + 0x98], eax
mov eax, 0xccd6bf4a
cmp dword [esp + 0x98], 0
jmp 0x401cab
cmp eax, 0x418db841
je 0x401cc0
cmp eax, 0x63e45b60
jne 0x401c30
cmp dword [esp + 0x94], 0
mov eax, 0xa136a264
mov ecx, 0x418db841
cmove eax, ecx
cmp eax, 0x418db840
jle 0x401c37
jmp 0x401c90
movsx eax, bl
mov ecx, ebp
push eax
call fcn.0041bfa0
mov ecx, ebp
call fcn.0040acb0
lea ecx, [esp + 0x30]
call fcn.00408b90
mov eax, dword [esp + 0x60]
mov eax, 0xd0c4c09b
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
lea eax, [esp + 0x30]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov eax, 0x55d3a22e
mov dword [esp + 4], 0
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, dword [esp + 4]
mov ecx, 0x4028f29e
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x90]
cmp eax, 0x64
mov eax, 0xb4fca02
jmp 0x402049
mov eax, 0x741e461e
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, 0xe053e19f
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, dword [esp + 0x68]
mov ecx, 0xb101243
cmp ecx, 0xb101243
jne 0x401dc5
cmp dword [eax + 4], 0
mov ecx, 0x69e11217
mov edx, 0x71673ebc
cmove ecx, edx
cmp ecx, 0xb101243
je 0x401dac
cmp ecx, 0x71673ebc
je 0x40205c
cmp ecx, 0x69e11217
jne 0x401da4
jmp 0x4020ab
lea eax, [esp + 0x40]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x98]
mov eax, dword [eax]
cmp eax, dword [esp + 0x44]
mov eax, 0xf472524e
setne byte [esp + 0x94]
nop word cs:[eax + eax]
nop dword [eax]
cmp eax, 0xf7646ef9
jg 0x401e60
cmp eax, 0xbafc4595
je 0x401eaf
cmp eax, 0xf472524e
jne 0x401e10
lea eax, [esp + 0x2c0]
mov ecx, 0x7d3c2ef
mov dword [esp + 0x9c], eax
mov eax, 0xf7646efa
cmp byte [esp + 0x94], 0
cmovne eax, ecx
cmp eax, 0xf7646ef9
jle 0x401e17
nop word cs:[eax + eax]
nop dword [eax]
cmp eax, 0xf7646efa
je 0x401e84
cmp eax, 0x7d3c2ef
jne 0x401e10
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x40]
mov eax, dword [eax]
mov dword [ecx], eax
add dword [esp + 0x40], 4
jmp 0x401e9d
mov eax, dword [esp + 0x98]
lea ecx, [esp + 0x3c]
push dword [esp + 0x9c]
push dword [eax]
call fcn.00408f90
mov eax, 0xbafc4595
cmp eax, 0xf7646ef9
jle 0x401e17
jmp 0x401e60
mov eax, dword [esp + 0x80]
inc eax
mov dword [esp + 0xc], eax
mov eax, 0xdfe867e1
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [eax], edx
mov dword [eax + 4], ecx
push 8
call fcn.0041e6e0
add esp, 4
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x68]
mov dword [eax], 0
mov dword [eax + 4], 0
push dword [esp + 0x68]
push str.__:__P
call fcn.00404280
add esp, 8
lea eax, [esp + 0x24]
lea ecx, [esp + 0x1a4]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov eax, dword [esp + 0x5c]
add eax, ecx
mov dword [esp + 0x70], eax
lea eax, [esp + 0x28]
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x98]
cmp dword [eax], 0
mov eax, 0x68b5b2c1
setne byte [esp + 0x94]
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp eax, 0x5a817e9a
jg 0x401fd0
cmp eax, 0xdb1cc828
je 0x401fb0
cmp eax, 0x191d39d9
jne 0x401f80
mov eax, dword [esp + 0x98]
lea ecx, [esp + 0x24]
push dword [esp + 0x9c]
push dword [eax]
call fcn.0041d2e0
jmp 0x401fc4
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x28]
movzx eax, byte [eax]
mov byte [ecx], al
inc dword [esp + 0x28]
mov eax, 0x5a817e9b
cmp eax, 0x5a817e9a
jle 0x401f87
cmp eax, 0x5a817e9b
je 0x402003
cmp eax, 0x68b5b2c1
jne 0x401f80
mov dword [esp + 0x9c], ebx
mov eax, 0x191d39d9
mov ecx, 0xdb1cc828
cmp byte [esp + 0x94], 0
cmovne eax, ecx
cmp eax, 0x5a817e9a
jle 0x401f87
jmp 0x401fd0
mov eax, dword [esp + 0x28]
mov ecx, 0xea6ad431
cmp eax, dword [esp + 0x24]
mov eax, 0x7a78786e
cmove eax, ecx
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
mov eax, dword [esp + 0xc]
mov ecx, 0xb44fdf61
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x80]
cmp eax, 0x3e9
mov eax, 0xfdf80a1e
cmovl eax, ecx
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
push dword [esp + 0x64]
call fcn.0041e710
add esp, 4
mov eax, 0xf89850c9
cmp eax, 0xb4fca01
jle 0x401067
jmp 0x4010b0
lea ecx, [esp + 0x3c]
call fcn.00408b90
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x2a4]
xor ecx, esp
call fcn.0041e74b
add esp, 0x2a8
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.0042cd1b