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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x318
mov esi, esp
mov eax, dword [ebp + 8]
mov ecx, dword [0x4ef4ac]
mov edx, dword [0x4ef4a8]
mov edi, ecx
sub edi, 0x264b6848
sub edi, 1
add edi, 0x264b6848
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
and bl, 1
mov byte [esi + 0x2c6], bl
cmp edx, 0xa
setl bl
and bl, 1
mov byte [esi + 0x2c7], bl
mov dword [esi + 0x2c0], 0x7df44e1
mov dword [esi + 0x2bc], eax
mov eax, dword [esi + 0x2c0]
mov ecx, eax
sub ecx, 0x8f428ec0
mov dword [esi + 0x2b8], eax
mov dword [esi + 0x2b4], ecx
jg 0x498335
jmp 0x498319
mov eax, dword [esi + 0x2b8]
sub eax, 0x8914286d
mov dword [esi + 0x2b0], eax
je 0x499a99
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x920a72e8
mov dword [esi + 0x2ac], eax
jg 0x49836d
jmp 0x498351
mov eax, dword [esi + 0x2b8]
sub eax, 0x8f428ec1
mov dword [esi + 0x2a8], eax
je 0x499221
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x94decc34
mov dword [esi + 0x2a4], eax
jg 0x4983a5
jmp 0x498389
mov eax, dword [esi + 0x2b8]
sub eax, 0x920a72e9
mov dword [esi + 0x2a0], eax
je 0x499b80
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x9e806191
mov dword [esi + 0x29c], eax
jg 0x4983dd
jmp 0x4983c1
mov eax, dword [esi + 0x2b8]
sub eax, 0x94decc35
mov dword [esi + 0x298], eax
je 0x4999c7
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x9ff5e3b5
mov dword [esi + 0x294], eax
jg 0x498415
jmp 0x4983f9
mov eax, dword [esi + 0x2b8]
sub eax, 0x9e806192
mov dword [esi + 0x290], eax
je 0x4995f5
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xa50d99f9
mov dword [esi + 0x28c], eax
jg 0x49844d
jmp 0x498431
mov eax, dword [esi + 0x2b8]
sub eax, 0x9ff5e3b6
mov dword [esi + 0x288], eax
je 0x4991e4
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x7f439bd5
mov dword [esi + 0x284], eax
jg 0x498ecd
jmp 0x498469
mov eax, dword [esi + 0x2b8]
sub eax, 0x7ddeed49
mov dword [esi + 0x280], eax
jg 0x498eb1
jmp 0x498485
mov eax, dword [esi + 0x2b8]
sub eax, 0x782ece74
mov dword [esi + 0x27c], eax
jg 0x498e95
jmp 0x4984a1
mov eax, dword [esi + 0x2b8]
sub eax, 0x7733a96b
mov dword [esi + 0x278], eax
jg 0x498e79
jmp 0x4984bd
mov eax, dword [esi + 0x2b8]
sub eax, 0x6c4b9eff
mov dword [esi + 0x274], eax
jg 0x498e5d
jmp 0x4984d9
mov eax, dword [esi + 0x2b8]
sub eax, 0x6ad6ab71
mov dword [esi + 0x270], eax
jg 0x498e41
jmp 0x4984f5
mov eax, dword [esi + 0x2b8]
sub eax, 0x6a6005b2
mov dword [esi + 0x26c], eax
jg 0x498e25
jmp 0x498511
mov eax, dword [esi + 0x2b8]
sub eax, 0x693dcba9
mov dword [esi + 0x268], eax
jg 0x498e09
jmp 0x49852d
mov eax, dword [esi + 0x2b8]
sub eax, 0x5f02d71d
mov dword [esi + 0x264], eax
jg 0x498ded
jmp 0x498549
mov eax, dword [esi + 0x2b8]
sub eax, 0xa5759489
mov dword [esi + 0x260], eax
jg 0x498581
jmp 0x498565
mov eax, dword [esi + 0x2b8]
sub eax, 0xa50d99fa
mov dword [esi + 0x25c], eax
je 0x4994e4
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xae2897fa
mov dword [esi + 0x258], eax
jg 0x4985b9
jmp 0x49859d
mov eax, dword [esi + 0x2b8]
sub eax, 0xa575948a
mov dword [esi + 0x254], eax
je 0x499e0f
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xb9f4eaa7
mov dword [esi + 0x250], eax
jg 0x4985f1
jmp 0x4985d5
mov eax, dword [esi + 0x2b8]
sub eax, 0xae2897fb
mov dword [esi + 0x24c], eax
je 0x499398
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xbcf9429d
mov dword [esi + 0x248], eax
jg 0x498629
jmp 0x49860d
mov eax, dword [esi + 0x2b8]
sub eax, 0xb9f4eaa8
mov dword [esi + 0x244], eax
je 0x49a3ba
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xc0829c47
mov dword [esi + 0x240], eax
jg 0x498661
jmp 0x498645
mov eax, dword [esi + 0x2b8]
sub eax, 0xbcf9429e
mov dword [esi + 0x23c], eax
je 0x499fb4
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xc153dd2f
mov dword [esi + 0x238], eax
jg 0x498699
jmp 0x49867d
mov eax, dword [esi + 0x2b8]
sub eax, 0xc0829c48
mov dword [esi + 0x234], eax
je 0x499274
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xc9349adc
mov dword [esi + 0x230], eax
jg 0x4986d1
jmp 0x4986b5
mov eax, dword [esi + 0x2b8]
sub eax, 0xc153dd30
mov dword [esi + 0x22c], eax
je 0x49a055
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xd5e9dac5
mov dword [esi + 0x228], eax
jg 0x498709
jmp 0x4986ed
mov eax, dword [esi + 0x2b8]
sub eax, 0xc9349add
mov dword [esi + 0x224], eax
je 0x499ed2
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xdc646f20
mov dword [esi + 0x220], eax
jg 0x498741
jmp 0x498725
mov eax, dword [esi + 0x2b8]
sub eax, 0xd5e9dac6
mov dword [esi + 0x21c], eax
je 0x499caa
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xe49ec6fa
mov dword [esi + 0x218], eax
jg 0x498779
jmp 0x49875d
mov eax, dword [esi + 0x2b8]
sub eax, 0xdc646f21
mov dword [esi + 0x214], eax
je 0x49a297
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xeae86380
mov dword [esi + 0x210], eax
jg 0x4987b1
jmp 0x498795
mov eax, dword [esi + 0x2b8]
sub eax, 0xe49ec6fb
mov dword [esi + 0x20c], eax
je 0x499739
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xebf86939
mov dword [esi + 0x208], eax
jg 0x4987e9
jmp 0x4987cd
mov eax, dword [esi + 0x2b8]
sub eax, 0xeae86381
mov dword [esi + 0x204], eax
je 0x49a3fa
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xf1af1683
mov dword [esi + 0x200], eax
jg 0x498821
jmp 0x498805
mov eax, dword [esi + 0x2b8]
sub eax, 0xebf8693a
mov dword [esi + 0x1fc], eax
je 0x499cc3
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xf2861ca5
mov dword [esi + 0x1f8], eax
jg 0x498859
jmp 0x49883d
mov eax, dword [esi + 0x2b8]
sub eax, 0xf1af1684
mov dword [esi + 0x1f4], eax
je 0x499ad3
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xf559fcd7
mov dword [esi + 0x1f0], eax
jg 0x498891
jmp 0x498875
mov eax, dword [esi + 0x2b8]
sub eax, 0xf2861ca6
mov dword [esi + 0x1ec], eax
je 0x499486
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xfea014e6
mov dword [esi + 0x1e8], eax
jg 0x4988c9
jmp 0x4988ad
mov eax, dword [esi + 0x2b8]
sub eax, 0xf559fcd8
mov dword [esi + 0x1e4], eax
je 0x499d21
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x4154c0c
mov dword [esi + 0x1e0], eax
jg 0x498901
jmp 0x4988e5
mov eax, dword [esi + 0x2b8]
sub eax, 0xfea014e7
mov dword [esi + 0x1dc], eax
je 0x49a34c
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x566130d
mov dword [esi + 0x1d8], eax
jg 0x498939
jmp 0x49891d
mov eax, dword [esi + 0x2b8]
sub eax, 0x4154c0d
mov dword [esi + 0x1d4], eax
je 0x499718
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x59bda671
mov dword [esi + 0x1d0], eax
jg 0x498dd1
jmp 0x498955
mov eax, dword [esi + 0x2b8]
sub eax, 0x59577aec
mov dword [esi + 0x1cc], eax
jg 0x498db5
jmp 0x498971
mov eax, dword [esi + 0x2b8]
sub eax, 0x5841a485
mov dword [esi + 0x1c8], eax
jg 0x498d99
jmp 0x49898d
mov eax, dword [esi + 0x2b8]
sub eax, 0x4e4e5131
mov dword [esi + 0x1c4], eax
jg 0x498d7d
jmp 0x4989a9
mov eax, dword [esi + 0x2b8]
sub eax, 0x4b342e90
mov dword [esi + 0x1c0], eax
jg 0x498d61
jmp 0x4989c5
mov eax, dword [esi + 0x2b8]
sub eax, 0x4a39f0fe
mov dword [esi + 0x1bc], eax
jg 0x498d45
jmp 0x4989e1
mov eax, dword [esi + 0x2b8]
sub eax, 0x48b2692f
mov dword [esi + 0x1b8], eax
jg 0x498d29
jmp 0x4989fd
mov eax, dword [esi + 0x2b8]
sub eax, 0x39cff279
mov dword [esi + 0x1b4], eax
jg 0x498d0d
jmp 0x498a19
mov eax, dword [esi + 0x2b8]
sub eax, 0x395c7f1d
mov dword [esi + 0x1b0], eax
jg 0x498cf1
jmp 0x498a35
mov eax, dword [esi + 0x2b8]
sub eax, 0x3910e44e
mov dword [esi + 0x1ac], eax
jg 0x498cd5
jmp 0x498a51
mov eax, dword [esi + 0x2b8]
sub eax, 0x37c73770
mov dword [esi + 0x1a8], eax
jg 0x498cb9
jmp 0x498a6d
mov eax, dword [esi + 0x2b8]
sub eax, 0x34f5c698
mov dword [esi + 0x1a4], eax
jg 0x498c9d
jmp 0x498a89
mov eax, dword [esi + 0x2b8]
sub eax, 0x3471bf3f
mov dword [esi + 0x1a0], eax
jg 0x498c81
jmp 0x498aa5
mov eax, dword [esi + 0x2b8]
sub eax, 0x331d7a65
mov dword [esi + 0x19c], eax
jg 0x498c65
jmp 0x498ac1
mov eax, dword [esi + 0x2b8]
sub eax, 0x30092774
mov dword [esi + 0x198], eax
jg 0x498c49
jmp 0x498add
mov eax, dword [esi + 0x2b8]
sub eax, 0x2eb30f6c
mov dword [esi + 0x194], eax
jg 0x498c2d
jmp 0x498af9
mov eax, dword [esi + 0x2b8]
sub eax, 0x2e62b74c
mov dword [esi + 0x190], eax
jg 0x498c11
jmp 0x498b15
mov eax, dword [esi + 0x2b8]
sub eax, 0x24063a53
mov dword [esi + 0x18c], eax
jg 0x498bf5
jmp 0x498b31
mov eax, dword [esi + 0x2b8]
sub eax, 0x239c6abd
mov dword [esi + 0x188], eax
jg 0x498bd9
jmp 0x498b4d
mov eax, dword [esi + 0x2b8]
sub eax, 0xd9fed17
mov dword [esi + 0x184], eax
jg 0x498bbd
jmp 0x498b69
mov eax, dword [esi + 0x2b8]
sub eax, 0x566130e
mov dword [esi + 0x180], eax
je 0x499e1e
jmp 0x498b85
mov eax, dword [esi + 0x2b8]
sub eax, 0x5977805
mov dword [esi + 0x17c], eax
je 0x498f58
jmp 0x498ba1
mov eax, dword [esi + 0x2b8]
sub eax, 0x7df44e1
mov dword [esi + 0x178], eax
je 0x498eee
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0xd9fed18
mov dword [esi + 0x174], eax
je 0x499a8a
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x239c6abe
mov dword [esi + 0x170], eax
je 0x4998d4
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x24063a54
mov dword [esi + 0x16c], eax
je 0x49a3e2
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x2e62b74d
mov dword [esi + 0x168], eax
je 0x499377
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x2eb30f6d
mov dword [esi + 0x164], eax
je 0x499c69
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x30092775
mov dword [esi + 0x160], eax
je 0x49a33d
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x331d7a66
mov dword [esi + 0x15c], eax
je 0x49a259
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x3471bf40
mov dword [esi + 0x158], eax
je 0x49967b
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x34f5c699
mov dword [esi + 0x154], eax
je 0x49a0c1
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x37c73771
mov dword [esi + 0x150], eax
je 0x4999a9
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x3910e44f
mov dword [esi + 0x14c], eax
je 0x4992d9
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x395c7f1e
mov dword [esi + 0x148], eax
je 0x499616
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x39cff27a
mov dword [esi + 0x144], eax
je 0x499e2d
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x48b26930
mov dword [esi + 0x140], eax
je 0x499a25
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x4a39f0ff
mov dword [esi + 0x13c], eax
je 0x4998ed
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x4b342e91
mov dword [esi + 0x138], eax
je 0x49a2eb
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x4e4e5132
mov dword [esi + 0x134], eax
je 0x499c48
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x5841a486
mov dword [esi + 0x130], eax
je 0x499897
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x59577aed
mov dword [esi + 0x12c], eax
je 0x49944f
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x59bda672
mov dword [esi + 0x128], eax
je 0x499f48
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x5f02d71e
mov dword [esi + 0x124], eax
je 0x4993fa
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x693dcbaa
mov dword [esi + 0x120], eax
je 0x49a0cf
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x6a6005b3
mov dword [esi + 0x11c], eax
je 0x49994b
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x6ad6ab72
mov dword [esi + 0x118], eax
je 0x499f8e
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x6c4b9f00
mov dword [esi + 0x114], eax
je 0x49a32e
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x7733a96c
mov dword [esi + 0x110], eax
je 0x499f69
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x782ece75
mov dword [esi + 0x10c], eax
je 0x499205
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x7ddeed4a
mov dword [esi + 0x108], eax
je 0x499ac4
jmp 0x498ee9
mov eax, dword [esi + 0x2b8]
sub eax, 0x7f439bd6
mov dword [esi + 0x104], eax
je 0x4999b8
jmp 0x498ee9
jmp 0x49a40d
mov eax, 0x693dcbaa
mov ecx, 0x5977805
mov dl, 1
mov dh, byte [esi + 0x2c6]
mov bl, byte [esi + 0x2c7]
mov bh, dh
xor bh, 1
mov dword [esi + 0x100], eax
mov al, bl
xor al, 1
xor dl, 0
mov ah, bh
and ah, 0
and dh, dl
mov byte [esi + 0xff], al
and al, 0
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [esi + 0xff]
or bh, al
xor bh, 1
or dl, 0
and bh, dl
or ah, bh
test ah, 1
mov edi, dword [esi + 0x100]
cmovne edi, ecx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov eax, 0x693dcbaa
mov ecx, 0x9ff5e3b6
mov edx, 0
mov edi, 0x28
mov ebx, 4
mov dword [esi + 0xf8], eax
mov eax, ebx
mov dword [esi + 0xf4], ebx
mov dword [esi + 0xf0], ecx
mov dword [esi + 0xec], edx
mov dword [esi + 0xe8], edi
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2c8], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2cc], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2d0], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2d4], eax
mov eax, 0x28
mov dword [esi + 0xe4], eax
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2d8], eax
mov eax, dword [esi + 0xe4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2dc], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2e0], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2e4], eax
mov eax, 8
call fcn.004cbb80
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x2e8], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2ec], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2f0], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2f4], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2f8], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x2fc], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x300], eax
mov eax, dword [esi + 0xf4]
call fcn.004cbb80
mov eax, esp
mov dword [esi + 0x304], eax
mov eax, dword [esi + 0x2cc]
mov ecx, dword [esi + 0x2bc]
mov dword [eax], ecx
mov eax, dword [esi + 0x2d0]
mov dword [eax], 0
mov eax, dword [esi + 0x2d4]
mov dword [eax], 0
mov eax, dword [esi + 0x2d8]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
call fcn.004cbdb0
add esp, 0xc
mov eax, dword [esi + 0x2dc]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
call fcn.004cbdb0
add esp, 0xc
mov eax, dword [esi + 0x2e0]
mov dword [eax], 0
mov eax, dword [esi + 0x2e4]
mov dword [eax], 0
mov eax, dword [esi + 0x2e8]
mov ecx, dword [0x4daf54]
mov dword [eax], ecx
mov di, word [0x4daf58]
mov word [eax + 4], di
mov eax, dword [esi + 0x2f0]
mov dword [eax], 0
cmp dword [0x4ee0e4], 0
setne al
and al, 1
mov byte [esi + 0x30a], al
mov ecx, dword [0x4ef4ac]
mov edx, dword [0x4ef4a8]
mov ebx, ecx
add ebx, 0x93ef7cd9
sub ebx, 1
sub ebx, 0x93ef7cd9
imul ecx, ebx
and ecx, 1
cmp ecx, 0
sete al
cmp edx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
mov edx, dword [esi + 0xf8]
mov ebx, dword [esi + 0xf0]
cmovne edx, ebx
mov dword [esi + 0x2c0], edx
jmp 0x49a40d
mov eax, 0x8f428ec1
mov ecx, 0x782ece75
mov dl, byte [esi + 0x30a]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, dword [0x4ee0e8]
mov ecx, dword [esi + 0x2c8]
mov dword [ecx], eax
mov dword [esi + 0x2c0], 0xbcf9429e
jmp 0x49a40d
mov eax, 0
sub esp, 4
mov dword [esp], 0
mov dword [esi + 0xe0], eax
call fcn.00409b50
add esp, 4
mov ecx, 0xf1af1684
mov edx, 0xc0829c48
mov edi, dword [esi + 0x2cc]
mov edi, dword [edi]
mov dword [edi], eax
mov edi, dword [esi + 0x2f4]
mov dword [edi], eax
mov eax, dword [esi + 0x2f4]
cmp dword [eax], 6
cmovae ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov eax, 0x331d7a66
mov ecx, 0x3910e44f
mov edx, 0
mov edi, dword [0x4ef4ac]
mov ebx, dword [0x4ef4a8]
sub edx, 1
mov dword [esi + 0xdc], eax
mov eax, edi
add eax, edx
imul edi, eax
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov edi, dword [esi + 0xdc]
cmovne edi, ecx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov eax, dword [0x4ef3e8]
mov ecx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [esi + 0xd8], eax
call ecx
mov ecx, dword [esi + 0x2e4]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov dword [edx + 8], ecx
mov dword [edx + 4], 0x2000000
mov eax, dword [esi + 0xd8]
call eax
mov ecx, 0x331d7a66
mov edx, 0x2e62b74d
cmp eax, 0
setne bl
and bl, 1
mov byte [esi + 0x30b], bl
mov eax, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, eax
add ebx, 0x22587c1e
sub ebx, 1
sub ebx, 0x22587c1e
imul eax, ebx
and eax, 1
cmp eax, 0
sete al
cmp edi, 0xa
setl ah
mov bl, al
and bl, ah
xor al, ah
or bl, al
test bl, 1
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov eax, 0x7ddeed4a
mov ecx, 0xae2897fb
mov dl, byte [esi + 0x30b]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, dword [0x4ef3e4]
mov ecx, dword [esi + 0x2f0]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x2e4]
mov edx, dword [edx]
mov edi, dword [esi + 0x2f0]
sub esp, 0x14
mov ebx, esp
mov dword [ebx + 0xc], ecx
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0x19
mov dword [ebx], edx
mov dword [ebx + 0x10], edi
call eax
mov ecx, 0x8914286d
mov edx, 0x5f02d71e
mov edi, dword [esi + 0x2f0]
cmp dword [edi], 0
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
mov dword [esi + 0xd4], eax
jmp 0x49a40d
mov eax, 1
mov ecx, dword [esi + 0x2f0]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esi + 0xd0], eax
call fcn.004cbbe3
add esp, 8
mov ecx, 0xf2861ca6
mov edx, 0x59577aed
mov edi, dword [esi + 0x2e0]
mov dword [edi], eax
mov eax, dword [esi + 0x2e0]
cmp dword [eax], 0
cmove ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov eax, dword [esi + 0x2e4]
mov eax, dword [eax]
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
mov ecx, dword [esi + 0x2c8]
mov dword [ecx], 0xffffffff
mov dword [esi + 0x2c0], 0xbcf9429e
mov dword [esi + 0xcc], eax
jmp 0x49a40d
mov eax, 0xdc646f21
mov ecx, 0xa50d99fa
mov edx, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, edx
add ebx, 0x17ef180c
sub ebx, 1
sub ebx, 0x17ef180c
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, dword [0x4ef3e4]
mov ecx, dword [esi + 0x2f0]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x2e0]
mov edx, dword [edx]
mov edi, dword [esi + 0x2e4]
mov edi, dword [edi]
mov ebx, dword [esi + 0x2f0]
sub esp, 0x14
mov dword [esi + 0xc8], eax
mov eax, esp
mov dword [eax + 0xc], ecx
mov dword [eax + 8], edx
mov dword [eax], edi
mov dword [eax + 0x10], ebx
mov dword [eax + 4], 0x19
mov eax, dword [esi + 0xc8]
call eax
mov ecx, 0xdc646f21
mov edx, 0x9e806192
mov bl, 1
cmp eax, 0
setne bh
and bh, 1
mov byte [esi + 0x30c], bh
mov eax, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov dword [esi + 0xc4], eax
add eax, 0xe574f4b5
sub eax, 1
sub eax, 0xe574f4b5
mov dword [esi + 0xc0], eax
mov eax, dword [esi + 0xc4]
mov dword [esi + 0xbc], ecx
mov ecx, dword [esi + 0xc0]
imul eax, ecx
and eax, 1
cmp eax, 0
sete bh
cmp edi, 0xa
setl al
mov ah, bh
xor ah, 1
mov cl, al
xor cl, 1
xor bl, 0
mov ch, ah
and ch, 0
and bh, bl
mov byte [esi + 0xbb], al
mov al, cl
and al, 0
mov byte [esi + 0xba], al
mov al, byte [esi + 0xbb]
and al, bl
or ch, bh
mov bh, byte [esi + 0xba]
or bh, al
xor ch, bh
or ah, cl
xor ah, 1
or bl, 0
and ah, bl
or ch, ah
test ch, 1
mov edi, dword [esi + 0xbc]
cmovne edi, edx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov eax, 0x94decc35
mov ecx, 0x395c7f1e
mov dl, byte [esi + 0x30c]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, 0x4b342e91
mov ecx, 0x3471bf40
mov edx, 0
mov edi, dword [0x4ef4ac]
mov ebx, dword [0x4ef4a8]
sub edx, 1
mov dword [esi + 0xb4], eax
mov eax, edi
add eax, edx
imul edi, eax
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov edi, dword [esi + 0xb4]
cmovne edi, ecx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov eax, dword [esi + 0x2e0]
mov eax, dword [eax]
mov ecx, dword [esi + 0x2d0]
mov dword [ecx], eax
mov eax, dword [0x4ef3e0]
mov ecx, dword [esi + 0x2d0]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x2d4]
sub esp, 8
mov edi, esp
mov dword [edi + 4], edx
mov dword [edi], ecx
call eax
mov ecx, 0x4b342e91
mov edx, 0x4154c0d
cmp eax, 0
setne bl
and bl, 1
mov byte [esi + 0x30d], bl
mov eax, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, eax
add ebx, 0x69c502e9
sub ebx, 1
sub ebx, 0x69c502e9
imul eax, ebx
and eax, 1
cmp eax, 0
sete al
cmp edi, 0xa
setl ah
mov bl, al
and bl, ah
xor al, ah
or bl, al
test bl, 1
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov eax, 0x7f439bd6
mov ecx, 0xe49ec6fb
mov dl, byte [esi + 0x30d]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, 0
mov ecx, dword [0x4e171c]
movzx ecx, word [ecx]
mov edx, dword [esi + 0x2f8]
mov dword [edx], ecx
mov ecx, dword [esi + 0x2f8]
mov ecx, dword [ecx]
sub eax, 1
sub ecx, eax
mov eax, dword [0x4e171c]
movzx eax, word [eax + ecx*2]
mov ecx, dword [esi + 0x2fc]
mov dword [ecx], eax
mov eax, dword [esi + 0x2fc]
mov eax, dword [eax]
mov ecx, dword [0x4e171c]
mov edx, dword [esi + 0x2f8]
mov edx, dword [edx]
shl edx, 1
add ecx, edx
add ecx, 4
mov edx, dword [0x4e171c]
add edx, 2
mov edi, dword [esi + 0x2f8]
mov edi, dword [edi]
mov ebx, dword [esi + 0x2d8]
sub esp, 0x14
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.0040a990
add esp, 0x14
mov eax, dword [0x4e1720]
movzx eax, word [eax]
mov ecx, dword [esi + 0x300]
mov dword [ecx], eax
mov eax, dword [esi + 0x300]
mov eax, dword [eax]
add eax, 0x124e8bc7
add eax, 1
sub eax, 0x124e8bc7
mov ecx, dword [0x4e1720]
movzx eax, word [ecx + eax*2]
mov ecx, dword [esi + 0x304]
mov dword [ecx], eax
mov eax, dword [esi + 0x304]
mov eax, dword [eax]
mov ecx, dword [0x4e1720]
mov edx, dword [esi + 0x300]
mov edx, dword [edx]
shl edx, 1
add ecx, edx
add ecx, 4
mov edx, dword [0x4e1720]
add edx, 2
mov edi, dword [esi + 0x300]
mov edi, dword [edi]
mov ebx, dword [esi + 0x2dc]
sub esp, 0x14
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.0040a990
add esp, 0x14
mov eax, dword [esi + 0x2d8]
mov ecx, dword [esi + 0x2d4]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00413240
add esp, 8
mov ecx, 0x239c6abe
mov edx, 0x5841a486
cmp eax, 0
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov eax, dword [esi + 0x2dc]
mov ecx, dword [esi + 0x2d4]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00413240
add esp, 8
mov ecx, 0x239c6abe
mov edx, 0x4a39f0ff
cmp eax, 0
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov dword [0x4ee0e8], 1
mov dword [esi + 0x2c0], 0x4a39f0ff
jmp 0x49a40d
mov eax, 0x6c4b9f00
mov ecx, 0x6a6005b3
mov edx, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, edx
add ebx, 0x59567b7a
sub ebx, 1
sub ebx, 0x59567b7a
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, 0x6c4b9f00
mov ecx, 0x37c73771
mov edx, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, edx
add ebx, 0x5cadfa4f
sub ebx, 1
sub ebx, 0x5cadfa4f
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x7f439bd6
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x94decc35
jmp 0x49a40d
mov eax, 0x30092775
mov ecx, 0x48b26930
mov edx, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, edx
sub ebx, 0x77a7e246
sub ebx, 1
add ebx, 0x77a7e246
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, 0x30092775
mov ecx, 0xd9fed18
mov edx, 0
mov edi, dword [0x4ef4ac]
mov ebx, dword [0x4ef4a8]
sub edx, 1
mov dword [esi + 0xb0], eax
mov eax, edi
add eax, edx
imul edi, eax
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov edi, dword [esi + 0xb0]
cmovne edi, ecx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x8914286d
jmp 0x49a40d
mov eax, dword [esi + 0x2e4]
mov eax, dword [eax]
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
mov dword [esi + 0x2c0], 0x7ddeed4a
mov dword [esi + 0xac], eax
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x39cff27a
jmp 0x49a40d
mov eax, 0xfea014e7
mov ecx, 0x920a72e9
mov dl, 1
mov edi, 0
mov ebx, dword [0x4ef4ac]
mov dword [esi + 0xa8], eax
mov eax, dword [0x4ef4a8]
sub edi, 1
mov dword [esi + 0xa4], eax
mov eax, ebx
add eax, edi
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete dh
mov eax, dword [esi + 0xa4]
cmp eax, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 0
mov bh, ah
and bh, 0
and dh, dl
mov byte [esi + 0xa3], al
mov al, bl
and al, 0
mov byte [esi + 0xa2], al
mov al, byte [esi + 0xa3]
and al, dl
or bh, dh
mov dh, byte [esi + 0xa2]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 0
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0xa8]
cmovne edi, ecx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov eax, dword [0x4ef3dc]
mov ecx, dword [esi + 0x2ec]
mov edx, dword [esi + 0x2e8]
sub esp, 0x2c
mov edi, esp
mov dword [edi + 0x28], ecx
mov dword [edi + 0x20], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0xc], 0x220
mov dword [edi + 0x24], 0
mov dword [edi + 8], 0x20
mov dword [edi], edx
mov dword [edi + 0x14], 0
mov dword [edi + 4], 2
call eax
mov ecx, 0xfea014e7
mov edx, 0x4e4e5132
cmp eax, 0
setne bl
and bl, 1
mov byte [esi + 0x30e], bl
mov eax, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, eax
sub ebx, 0xeb684e31
sub ebx, 1
add ebx, 0xeb684e31
imul eax, ebx
and eax, 1
cmp eax, 0
sete al
cmp edi, 0xa
setl ah
mov bl, al
and bl, ah
xor al, ah
or bl, al
test bl, 1
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov eax, 0x566130e
mov ecx, 0x2eb30f6d
mov dl, byte [esi + 0x30e]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, dword [0x4ef3d8]
mov ecx, dword [esi + 0x2ec]
mov ecx, dword [ecx]
sub esp, 0xc
mov edx, esp
mov dword [edx + 8], 0x4ee0e8
mov dword [edx + 4], ecx
mov dword [edx], 0
call eax
mov ecx, 0xd5e9dac6
mov edx, 0xebf8693a
cmp eax, 0
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov dword [0x4ee0e8], 0
mov dword [esi + 0x2c0], 0xebf8693a
jmp 0x49a40d
mov eax, 0xb9f4eaa8
mov ecx, 0xf559fcd8
mov edx, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, edx
sub ebx, 0x830599f1
sub ebx, 1
add ebx, 0x830599f1
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, dword [0x4ef3d4]
mov ecx, dword [esi + 0x2ec]
mov ecx, dword [ecx]
sub esp, 4
mov edx, esp
mov dword [edx], ecx
call eax
mov ecx, 0xb9f4eaa8
mov edx, 0xa575948a
mov bl, 1
mov edi, dword [0x4ef4ac]
mov dword [esi + 0x9c], eax
mov eax, dword [0x4ef4a8]
mov dword [esi + 0x98], eax
mov eax, edi
sub eax, 0x42d2def1
sub eax, 1
add eax, 0x42d2def1
imul edi, eax
and edi, 1
cmp edi, 0
sete bh
mov eax, dword [esi + 0x98]
cmp eax, 0xa
setl al
mov ah, bh
xor ah, 1
mov byte [esi + 0x97], al
xor al, 1
xor bl, 1
mov byte [esi + 0x96], al
mov al, ah
and al, 1
and bh, bl
mov byte [esi + 0x95], al
mov al, byte [esi + 0x96]
and al, 1
mov byte [esi + 0x94], al
mov al, byte [esi + 0x97]
and al, bl
mov byte [esi + 0x93], al
mov al, byte [esi + 0x95]
or al, bh
mov bh, byte [esi + 0x94]
mov byte [esi + 0x92], al
mov al, byte [esi + 0x93]
or bh, al
mov al, byte [esi + 0x92]
xor al, bh
mov bh, byte [esi + 0x96]
or ah, bh
xor ah, 1
or bl, 1
and ah, bl
or al, ah
test al, 1
cmovne ecx, edx
mov dword [esi + 0x2c0], ecx
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x566130e
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x39cff27a
jmp 0x49a40d
mov eax, 0x24063a54
mov ecx, 0xc9349add
mov dl, 1
mov edi, dword [0x4ef4ac]
mov ebx, dword [0x4ef4a8]
mov dword [esi + 0x8c], eax
mov eax, edi
add eax, 0xb1fe10c9
sub eax, 1
sub eax, 0xb1fe10c9
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 0
mov bh, ah
and bh, 0
and dh, dl
mov byte [esi + 0x8b], al
mov al, bl
and al, 0
mov byte [esi + 0x8a], al
mov al, byte [esi + 0x8b]
and al, dl
or bh, dh
mov dh, byte [esi + 0x8a]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 0
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0x8c]
cmovne edi, ecx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov eax, 0x24063a54
mov ecx, 0x59bda672
mov edx, dword [esi + 0x2e0]
cmp dword [edx], 0
setne bl
and bl, 1
mov byte [esi + 0x30f], bl
mov edx, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, edx
add ebx, 0xc14d0c21
sub ebx, 1
sub ebx, 0xc14d0c21
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, 0x6ad6ab72
mov ecx, 0x7733a96c
mov dl, byte [esi + 0x30f]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, dword [esi + 0x2e0]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.004cbbab
add esp, 4
mov dword [esi + 0x2c0], 0x6ad6ab72
jmp 0x49a40d
mov dword [0x4ee0e4], 1
mov eax, dword [0x4ee0e8]
mov ecx, dword [esi + 0x2c8]
mov dword [ecx], eax
mov dword [esi + 0x2c0], 0xbcf9429e
jmp 0x49a40d
mov eax, 0xeae86381
mov ecx, 0xc153dd30
mov dl, 1
mov edi, 0
mov ebx, dword [0x4ef4ac]
mov dword [esi + 0x84], eax
mov eax, dword [0x4ef4a8]
sub edi, 1
mov dword [esi + 0x80], eax
mov eax, ebx
add eax, edi
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete dh
mov eax, dword [esi + 0x80]
cmp eax, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 1
mov bh, ah
and bh, 1
and dh, dl
mov byte [esi + 0x7f], al
mov al, bl
and al, 1
mov byte [esi + 0x7e], al
mov al, byte [esi + 0x7f]
and al, dl
or bh, dh
mov dh, byte [esi + 0x7e]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 1
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0x84]
cmovne edi, ecx
mov dword [esi + 0x2c0], edi
jmp 0x49a40d
mov eax, 0xeae86381
mov ecx, 0x34f5c699
mov edx, dword [esi + 0x2c8]
mov edx, dword [edx]
mov dword [esi + 0x310], edx
mov edx, dword [0x4ef4ac]
mov edi, dword [0x4ef4a8]
mov ebx, edx
add ebx, 0xcb6b54fd
sub ebx, 1
sub ebx, 0xcb6b54fd
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x2c0], eax
jmp 0x49a40d
mov eax, dword [esi + 0x310]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, 0
mov ecx, 0x28
mov edx, 4
mov dword [esi + 0x78], eax
mov eax, edx
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], ecx
call fcn.004cbb80
mov eax, esp
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x6c], eax
mov eax, ecx
call fcn.004cbb80
mov eax, esp
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x68], eax
mov eax, ecx
call fcn.004cbb80
mov eax, esp
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x64], eax
mov eax, ecx
call fcn.004cbb80
mov eax, esp
mov ecx, 0x28
mov dword [esi + 0x60], eax
mov eax, ecx
mov dword [esi + 0x5c], ecx
call fcn.004cbb80
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x58], eax
mov eax, ecx
call fcn.004cbb80
mov eax, esp
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x54], eax
mov eax, ecx
call fcn.004cbb80
mov eax, esp
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x50], eax
mov eax, ecx
call fcn.004cbb80
mov eax, 8
mov ecx, esp
mov dword [esi + 0x4c], ecx
call fcn.004cbb80
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x48], eax
mov eax, ecx
call fcn.004cbb80
mov eax, dword [esi + 0x54]
mov ecx, esp
mov edx, dword [esi + 0x68]
mov edi, dword [esi + 0x50]
mov ebx, dword [esi + 0x74]
mov dword [esi + 0x44], eax
mov eax, ebx
mov dword [esi + 0x40], ecx
mov dword [esi + 0x3c], edx
mov dword [esi + 0x38], edi
call fcn.004cbb80
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x64]
mov edx, esp
mov edi, dword [esi + 0x60]
mov ebx, dword [esi + 0x4c]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x2bc]
mov dword [eax], ecx
mov eax, dword [esi + 0x30]
mov dword [eax], 0
mov dword [edi], 0
mov edi, dword [esi + 0x34]
sub esp, 0xc
mov dword [esp], edi
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
mov dword [esi + 0x2c], ebx
mov dword [esi + 0x28], edx
call fcn.004cbdb0
add esp, 0xc
mov eax, dword [esi + 0x44]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
call fcn.004cbdb0
add esp, 0xc
mov eax, dword [esi + 0x38]
mov dword [eax], 0
mov ecx, dword [esi + 0x2c]
mov dword [ecx], 0
mov edx, dword [0x4daf54]
mov edi, dword [esi + 0x48]
mov dword [edi], edx
mov di, word [0x4daf58]
mov edx, dword [esi + 0x48]
mov word [edx + 4], di
mov ebx, dword [esi + 0x28]
mov dword [ebx], 0
mov dword [esi + 0x2c0], 0x5977805
jmp 0x49a40d
mov eax, dword [0x4ef3e8]
mov ecx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [esi + 0x24], eax
call ecx
mov ecx, dword [esi + 0x2e4]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov dword [edx + 8], ecx
mov dword [edx + 4], 0x2000000
mov eax, dword [esi + 0x24]
call eax
mov dword [esi + 0x2c0], 0x3910e44f
mov dword [esi + 0x20], eax
jmp 0x49a40d
mov eax, dword [0x4ef3e4]
mov ecx, dword [esi + 0x2f0]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x2e0]
mov edx, dword [edx]
mov edi, dword [esi + 0x2e4]
mov edi, dword [edi]
mov ebx, dword [esi + 0x2f0]
sub esp, 0x14
mov dword [esi + 0x1c], eax
mov eax, esp
mov dword [eax + 0xc], ecx
mov dword [eax + 8], edx
mov dword [eax], edi
mov dword [eax + 0x10], ebx
mov dword [eax + 4], 0x19
mov eax, dword [esi + 0x1c]
call eax
mov dword [esi + 0x2c0], 0xa50d99fa
mov dword [esi + 0x18], eax
jmp 0x49a40d
mov eax, dword [esi + 0x2e0]
mov eax, dword [eax]
mov ecx, dword [esi + 0x2d0]
mov dword [ecx], eax
mov eax, dword [0x4ef3e0]
mov ecx, dword [esi + 0x2d0]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x2d4]
sub esp, 8
mov edi, esp
mov dword [edi + 4], edx
mov dword [edi], ecx
call eax
mov dword [esi + 0x2c0], 0x3471bf40
mov dword [esi + 0x14], eax
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x6a6005b3
jmp 0x49a40d
mov dword [esi + 0x2c0], 0x48b26930
jmp 0x49a40d
mov eax, dword [0x4ef3dc]
mov ecx, dword [esi + 0x2ec]
mov edx, dword [esi + 0x2e8]
sub esp, 0x2c
mov edi, esp
mov dword [edi + 0x28], ecx
mov dword [edi + 0x20], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0xc], 0x220
mov dword [edi + 0x24], 0
mov dword [edi + 8], 0x20
mov dword [edi], edx
mov dword [edi + 0x14], 0
mov dword [edi + 4], 2
call eax
mov dword [esi + 0x2c0], 0x920a72e9
mov dword [esi + 0x10], eax
jmp 0x49a40d
mov eax, dword [0x4ef3d4]
mov ecx, dword [esi + 0x2ec]
mov ecx, dword [ecx]
sub esp, 4
mov edx, esp
mov dword [edx], ecx
call eax
mov dword [esi + 0x2c0], 0xf559fcd8
mov dword [esi + 0xc], eax
jmp 0x49a40d
mov eax, dword [esi + 0x2e0]
mov dword [esi + 0x2c0], 0xc9349add
mov dword [esi + 8], eax
jmp 0x49a40d
mov eax, dword [esi + 0x2c8]
mov dword [esi + 0x2c0], 0xc153dd30
mov dword [esi + 4], eax
jmp 0x4982f4