Function at 0x100416f0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x84], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x88], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x8c], eax
mov eax, dword [0x100c16a8]
xor edx, edx
div dword [0x100c16ac]
sub eax, 0xfecd531c
sub eax, 0xa581bed
sub eax, 0xde455798
xor eax, 0xa8dbfbfc
imul eax, eax, 0x56f8dac2
or eax, 0xc6dee2cd
add eax, 0x7af5f75
mov ecx, 0xfec1c2ee
xor edx, edx
div ecx
and eax, 0xee243b4e
xor eax, 0x70596437
and eax, 0xad344b4a
sub eax, 0xb88ebd73
or eax, 0x3ae9a8fe
mov ecx, 0xaab6a94e
xor edx, edx
div ecx
sub eax, 0x9e576b10
xor eax, 0xb5811d79
xor eax, 0x418a66a7
sub eax, 0x54134184
imul eax, eax, 0x482198be
imul eax, eax, 0xf9c5dd39
imul eax, eax, 0xee3651a7
or eax, 0xea469b8
imul eax, eax, 0xcb66d4a1
and eax, 0x24abe798
mov ecx, 0x1c88aa3a
xor edx, edx
div ecx
xor eax, 0xee2dcf97
sub eax, 0x1b3ccacd
or eax, 0x7a6a2ea9
imul eax, eax, 0x1fe6d38a
add eax, 0x7ac0b1ad
imul eax, eax, 0xcf0ba29e
or eax, 0xc30c7848
xor eax, 0x7a7f5402
add eax, 0x770469a5
sub eax, 0x57788735
imul eax, eax, 0x1f1779c8
xor eax, 0xd34547fa
or eax, 0xce79b285
sub eax, 0x290655bd
and eax, 0x8ac1d473
and eax, 0x69e762ee
sub eax, 0x2396c063
and eax, 0xbbea05b6
imul eax, eax, 0xb0299ea8
mov ecx, 0xf259427e
xor edx, edx
div ecx
or eax, 0x1799ba86
and eax, 0x166ba173
sub eax, 0x2c3a5f36
or eax, 0x72b590ea
and eax, 0xaaf84a41
sub eax, 0x5e9d0d21
mov ecx, 0xff411d20
xor edx, edx
div ecx
or eax, 0xba9f8fb8
xor eax, 0x7f3cd5ed
xor eax, 0x274b98c6
xor eax, 0xefbfe6bc
or eax, 0x186e2bf9
imul eax, eax, 0x208aa5d5
mov ecx, 0x6382f6f6
xor edx, edx
div ecx
sub eax, 0x5b7977b8
and eax, 0xaea59b4a
mov ecx, 0x5c6735a8
xor edx, edx
div ecx
or eax, 0xb88c850f
and eax, 0x4f5448ce
xor eax, 0xae6ba652
imul eax, eax, 0xa909f791
sub eax, 0xcae4fc67
or eax, 0x6f86741e
mov ecx, 0x6959d0f0
xor edx, edx
div ecx
mov ecx, 0xd3f3196a
xor edx, edx
div ecx
or eax, 0xf4d024cd
imul eax, eax, 0x48ae57ef
cmp eax, 0x9c7bf199
jbe 0x100425b1
mov eax, 0x51f5e9c0
mov dword [esi + 0x80], eax
push eax
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x74], ecx
mov esp, ecx
push eax
mov eax, esp
mov dword [esi + 0x58], eax
mov dword [esi + 0x34], eax
push eax
mov eax, esp
mov dword [esi + 0x5c], eax
push eax
mov eax, esp
mov dword [esi + 0x60], eax
push eax
mov eax, esp
mov dword [esi + 0x64], eax
push eax
mov eax, esp
mov dword [esi + 0x68], eax
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [esi + 0x6c], eax
mov dword [esi + 0x38], eax
push eax
mov ebx, esp
mov eax, ebx
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x70], eax
mov dword [esi + 0x40], eax
push eax
mov edi, esp
mov eax, edi
mov dword [esi + 0x44], eax
push eax
mov eax, esp
mov dword [esi + 0x78], eax
push eax
mov eax, esp
mov dword [esi + 0x7c], eax
push eax
mov eax, esp
mov dword [esi + 0x48], eax
push eax
mov eax, esp
mov dword [esi + 0x4c], eax
push eax
mov eax, esp
mov dword [esi + 0x50], eax
push eax
mov eax, esp
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0x84]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x88]
mov dword [ecx], eax
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x8c]
mov dword [eax], ecx
mov ecx, dword [esi + 0x5c]
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
add eax, ecx
mov ecx, dword [esi + 0x60]
mov dword [ecx], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [ecx]
add ecx, 0x78
mov dword [eax], ecx
mov ecx, dword [esi + 0x68]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov ecx, dword [ecx]
add eax, ecx
mov ecx, dword [esi + 0x6c]
mov dword [edx], eax
mov eax, dword [edx]
mov eax, dword [eax + 0x14]
mov dword [ecx], eax
mov eax, dword [esi + 0x70]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x18]
mov dword [ebx], ecx
mov ecx, dword [esi + 0x74]
mov ebx, dword [ecx]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x1c]
add ebx, ecx
mov ecx, dword [esi + 0x74]
mov dword [eax], ebx
mov ebx, dword [ecx]
mov eax, dword [edx]
mov eax, dword [eax + 0x20]
add ebx, eax
mov eax, dword [esi + 0x78]
mov dword [edi], ebx
mov ecx, dword [ecx]
mov edx, dword [edx]
mov edx, dword [edx + 0x24]
add ecx, edx
mov dword [eax], ecx
sub esp, 8
mov dword [esp], 0x10
mov dword [esp + 4], 0x14
call fcn.1000d660
mov ecx, dword [esi + 0x7c]
add esp, 8
mov eax, dword [esi + 0x80]
mov dword [ecx], 0
cmp eax, 0x84918b76
je 0x100425b1
jmp 0x10041a20
mov ecx, dword [esi + 0x38]
mov eax, dword [esi + 0x7c]
mov eax, dword [eax]
cmp eax, dword [ecx]
jae 0x1004259b
mov ecx, dword [esi + 0x7c]
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov ecx, dword [ecx]
cmp dword [eax + ecx*4], 0
jne 0x10041a49
jmp 0x1004258c
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x48]
mov edi, dword [esi + 0x7c]
mov edx, dword [esi + 0x40]
mov edx, dword [edx]
mov edi, dword [edi]
mov edx, dword [edx + edi*4]
mov dword [ecx], edx
mov dword [eax], 0
mov eax, dword [0x100c16b8]
xor edx, edx
div dword [0x100c16bc]
or eax, 0x2ea3dc7e
and eax, 0x17cecfe
xor eax, 0x28b5aabf
mov ecx, 0xf9b5c5e4
xor edx, edx
div ecx
sub eax, 0x8cef965e
or eax, 0x3b86f99a
mov ecx, 0x9ac5ed77
xor edx, edx
div ecx
mov ecx, 0x4278efc7
xor edx, edx
div ecx
add eax, 0xcfe2691b
or eax, 0x6139ad0
add eax, 0x3637afb4
xor eax, 0xafe76d1
sub eax, 0xaa30c2dc
xor eax, 0xa4e02f9b
and eax, 0x1549ba70
or eax, 0xd67c1caa
imul eax, eax, 0x3c0c9c7e
or eax, 0x3d9554b6
mov ecx, 0x3e46a1e2
xor edx, edx
div ecx
imul eax, eax, 0x7723ea58
imul eax, eax, 0xd4fd590d
add eax, 0x7e018a1f
imul eax, eax, 0xf1c59b9a
and eax, 0xb34087aa
mov ecx, 0xb997f8f
xor edx, edx
div ecx
xor eax, 0x79cd4918
sub eax, 0x531d9255
sub eax, 0x86ef1d9e
and eax, 0xa4642923
mov ecx, 0xd84a0d08
xor edx, edx
div ecx
mov ecx, 0x49583138
xor edx, edx
div ecx
and eax, 0x31a1def8
add eax, 0x6f121818
sub eax, 0x1108031
xor eax, 0xed98988
sub eax, 0x30fec7a9
xor eax, 0xf7dc3c3
sub eax, 0xd06bd5f9
mov ecx, 0x2eb035f4
xor edx, edx
div ecx
xor eax, 0x187b1167
add eax, 0x78aa98cd
imul eax, eax, 0x14d0d6e4
sub eax, 0x2ebbe25d
and eax, 0xd97123c7
and eax, 0x625c23b5
xor eax, 0x1c1f9922
xor eax, 0xea25d61d
and eax, 0x574c9fc5
mov ecx, 0x6a95eeec
xor edx, edx
div ecx
sub eax, 0x9baec552
mov ecx, 0x3ed41f7b
xor edx, edx
div ecx
mov ecx, 0xc6e15514
xor edx, edx
div ecx
imul eax, eax, 0x8d9a0c60
and eax, 0x2864c353
sub eax, 0xbf53ce
sub eax, 0x15817807
and eax, 0x4da67d45
and eax, 0x75aede71
sub eax, 0x16c0d068
sub eax, 0x60dfe5f4
sub eax, 0x504f46bd
and eax, 0xacc76cfa
and eax, 0x7be6a561
add eax, 0x1723122a
sub eax, 0x5635a3d1
add eax, 0xd5b56d38
xor eax, 0x90672f36
and eax, 0x82a239ea
xor eax, 0xb74ce6dd
imul eax, eax, 0x33c359ae
and eax, 0xede6b72c
add eax, 0x868024e5
cmp eax, 0xf5ea6042
je 0x100426c1
mov ecx, dword [esi + 0x4c]
mov eax, dword [0x100c16c0]
sub eax, dword [0x100c16c4]
mov edi, 0xb68acdc1
xor edx, edx
div edi
and eax, 0x37c7d86
and eax, 0x2806f005
add eax, 0xd5f63e32
sub eax, 0x1bf0858e
xor eax, 0x62ebb685
xor eax, 0x150dad02
add eax, 0xb12fc7d4
xor eax, 0x30d4edc0
mov edi, 0x3a5302ce
xor edx, edx
div edi
mov edi, 0xc0317971
xor edx, edx
div edi
sub eax, 0x39ccd50e
add eax, 0xfe0611e0
sub eax, 0x8cc2ede2
add eax, 0x6289965d
add eax, 0xe8538623
add eax, 0xc3066507
or eax, 0x1672ee43
imul eax, eax, 0x8f433188
mov edi, 0xff9be4fb
xor edx, edx
div edi
mov edi, 0xe01cddee
xor edx, edx
div edi
sub eax, 0x30e2d248
sub eax, 0xc059300a
xor eax, 0xbd37ff7f
sub eax, 0x158b9d35
sub eax, 0xe9336da3
xor eax, 0x5873bb45
or eax, 0x410dcf62
mov edi, 0xf6b0b70d
xor edx, edx
div edi
and eax, 0x69b69867
imul eax, eax, 0x73a0c7e6
sub eax, 0x5a75413c
add eax, 0xcaf5271
imul eax, eax, 0x30b74b30
add eax, 0x318d86b8
imul eax, eax, 0xeadfdb26
or eax, 0xfdcab158
sub eax, 0x845b0e9d
imul eax, eax, 0xfa5bb921
sub eax, 0x1d153e65
imul eax, eax, 0x3bbfeaf0
xor eax, 0xb4eb5965
or eax, 0x7ecc5d1
sub eax, 0xfe7a1690
or eax, 0x9dcdaad3
or eax, 0x797e096a
sub eax, 0x9d4c0dd4
sub eax, 0x110cb2e7
add eax, 0x870392cc
sub eax, 0xeea03a27
xor eax, 0xf9dc18a1
or eax, 0x6543f9af
mov edi, 0x2afb4b09
xor edx, edx
div edi
or eax, 0xc7cc976b
sub eax, 0x12a3859f
xor eax, 0xcf7204d
and eax, 0xe2b27c75
imul eax, eax, 0x8e33c4aa
and eax, 0x49ce58c3
xor eax, 0xdd0cfda6
or eax, 0x3170793b
imul eax, eax, 0x514c8e7
and eax, 0x6086d4a8
mov edi, 0x88c19cf7
xor edx, edx
div edi
mov edx, dword [esi + 0x3c]
sub eax, 0xab762af0
xor eax, 0xd457f504
and eax, 0x40f687cf
and eax, 0x5d7ce635
and eax, 0x268598f2
xor eax, 0xb57c8158
xor eax, 0xd72ec7
imul eax, eax, 0x624caef2
mov ecx, dword [ecx]
cmp ecx, dword [edx]
setb cl
mov byte [esi + 0x2f], cl
cmp eax, 0x4502b26a
je 0x10041c17
mov al, byte [esi + 0x2f]
test al, 1
jne 0x10041dde
jmp 0x10042587
mov ecx, dword [esi + 0x7c]
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x78]
mov eax, dword [eax]
mov edx, dword [edx]
movzx eax, word [eax + edx*2]
cmp eax, dword [ecx]
jne 0x10042573
mov eax, dword [0x100c16c8]
xor eax, dword [0x100c16cc]
or eax, 0xc7961437
xor eax, 0x37d8a542
xor eax, 0xbabaab18
xor eax, 0xb233234
add eax, 0x2d3535eb
mov ecx, 0x69401c35
xor edx, edx
div ecx
or eax, 0x169fb586
mov ecx, 0x488ae675
xor edx, edx
div ecx
mov ecx, 0xf85e2566
xor edx, edx
div ecx
and eax, 0xdf55e371
sub eax, 0x2d3006e2
add eax, 0x2b7a3f07
mov ecx, 0xa62143f6
xor edx, edx
div ecx
mov ecx, 0xda1ff15a
xor edx, edx
div ecx
add eax, 0xf5ef949e
sub eax, 0x945ce789
add eax, 0xca56eeb0
and eax, 0xf6ae00f3
sub eax, 0x99fe3f3
sub eax, 0x2675c8b2
and eax, 0xd4771e72
xor eax, 0x4d7a2b0d
add eax, 0x5f0f64b6
xor eax, 0x2444fdfd
sub eax, 0x35b9f538
mov ecx, 0xf7c2fe77
xor edx, edx
div ecx
mov ecx, 0x37ad8d89
xor edx, edx
div ecx
sub eax, 0x2950873c
sub eax, 0x69b9c4fe
or eax, 0xb60dfce8
imul eax, eax, 0xf9f3d40
or eax, 0xbed3aa0f
or eax, 0x24af7d95
xor eax, 0x905af838
sub eax, 0x971a5ea0
sub eax, 0xbae68fe
and eax, 0x96e23b69
xor eax, 0x1ff594f6
xor eax, 0x9a7d3c00
add eax, 0x12c8f76
or eax, 0x87d0a8a
and eax, 0x6edbe2f
or eax, 0xd9f78f6a
xor eax, 0xbd0dd94f
sub eax, 0xbaec5d54
xor eax, 0xc0879ad2
imul eax, eax, 0xe5ee39f4
xor eax, 0x2d3109d9
imul eax, eax, 0xdce1a141
mov ecx, 0x32474b2e
xor edx, edx
div ecx
mov ecx, 0x20269bd4
xor edx, edx
div ecx
sub eax, 0x1a4ec26a
or eax, 0xe96dcc7f
imul eax, eax, 0x5143c003
xor eax, 0x97374840
add eax, 0xfad66afb
xor eax, 0xefc49bf6
imul eax, eax, 0x897239b0
xor eax, 0xe1d05e98
xor eax, 0x66780079
imul eax, eax, 0x510bcece
or eax, 0x17203a99
sub eax, 0xfb676e40
sub eax, 0x974bbe21
add eax, 0xcc55858f
imul eax, eax, 0x4bd4aac2
mov ecx, 0xdbd2f3bc
xor edx, edx
div ecx
sub eax, 0xedddb193
xor eax, 0xb37cae0f
and eax, 0x8f4af844
and eax, 0x3d8dc613
xor eax, 0x56bd5f6
cmp eax, 0xf22edbba
jae 0x100426c6
mov edi, dword [esi + 0x50]
mov ebx, dword [esi + 0x44]
mov eax, 0x4e0341f5
mov dword [esi + 0x28], eax
sub esp, 8
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 2
call fcn.10007fd0
mov edx, dword [esi + 0x74]
mov ecx, dword [esi + 0x34]
add esp, 8
mov eax, dword [esi + 0x4c]
mov ebx, dword [ebx]
mov eax, dword [eax]
mov ebx, dword [ebx + eax*4]
mov eax, dword [esi + 0x54]
mov dword [edi], ebx
mov edx, dword [edx]
add edx, dword [edi]
mov dword [eax], edx
mov edx, dword [ecx]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.1008a590
add esp, 8
mov ecx, eax
mov eax, dword [esi + 0x28]
cmp ecx, 0
setne cl
mov byte [esi + 0x2e], cl
cmp eax, 0x3a619187
je 0x100426c6
mov al, byte [esi + 0x2e]
test al, 1
jne 0x100421fa
jmp 0x10042026
mov eax, dword [0x100c16d8]
xor edx, edx
div dword [0x100c16dc]
xor eax, 0x6bb30359
imul eax, eax, 0x3dba578
sub eax, 0x5ed3c2b7
mov ecx, 0xf0816e56
xor edx, edx
div ecx
xor eax, 0x33504005
mov ecx, 0x808fc6cd
xor edx, edx
div ecx
or eax, 0xd2f223f0
imul eax, eax, 0x352cd1dc
and eax, 0xc1d7bce0
or eax, 0x3fb46770
sub eax, 0xe6558bc8
imul eax, eax, 0xa3ef470d
add eax, 0xf1b0ea83
imul eax, eax, 0xf920e924
imul eax, eax, 0xf27678a6
imul eax, eax, 0xdb794c11
add eax, 0x56aad129
imul eax, eax, 0xc794d648
xor eax, 0xd59d10f9
xor eax, 0xf4b36c3d
add eax, 0xe8bdd957
add eax, 0x41830d48
imul eax, eax, 0xf4ea81a8
sub eax, 0x18bff095
sub eax, 0x4523307e
add eax, 0x4ee3b0bb
xor eax, 0xc8e10f2
imul eax, eax, 0xf0cc66bf
add eax, 0x5ff9e877
or eax, 0x9a2f3e47
or eax, 0xa4ef6709
and eax, 0x51a33cb7
sub eax, 0x7d6d0a28
or eax, 0x871d3b4f
sub eax, 0x5131b765
or eax, 0xf4f39265
mov ecx, 0x475ad84c
xor edx, edx
div ecx
mov ecx, 0x6e2e348c
xor edx, edx
div ecx
xor eax, 0x4e3ed49d
or eax, 0x4d57e900
imul eax, eax, 0xcd3a7e9d
add eax, 0x567108ac
add eax, 0x68a96961
xor eax, 0x83ac4dc7
imul eax, eax, 0xad293666
imul eax, eax, 0x790a83b9
sub eax, 0x1c09dad1
mov ecx, 0xf967b9f6
xor edx, edx
div ecx
or eax, 0x47df72ec
add eax, 0x168f1346
xor eax, 0x54adfc36
add eax, 0x4165e10
mov ecx, 0xeea1108d
xor edx, edx
div ecx
imul eax, eax, 0x56fd3b51
xor eax, 0x888d3869
imul eax, eax, 0x264266f9
sub eax, 0x5f892c7d
xor eax, 0x739c2185
sub eax, 0xaedfc5bf
xor eax, 0xc82b4ae4
xor eax, 0x7f71de21
xor eax, 0x7f38a63d
or eax, 0xf0ecfa78
mov ecx, 0x9b5aa25d
xor edx, edx
div ecx
and eax, 0x5c2c306c
or eax, 0xb313e5e0
mov ecx, 0x10b06fa9
xor edx, edx
div ecx
xor eax, 0xc47ed6e9
or eax, 0x52dbae4
imul eax, eax, 0x46baa5ee
and eax, 0x5d4a362c
mov ecx, 0x8e9fefdb
xor edx, edx
div ecx
cmp eax, 0x8cbeef9f
ja 0x1004271e
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x48]
mov edx, dword [esi + 0x74]
xor eax, eax
mov edx, dword [edx]
add edx, dword [edi]
mov dword [ecx], edx
cmp eax, 0x43a5529b
je 0x1004271e
jmp 0x100425a4
mov eax, dword [0x100c16e8]
xor eax, dword [0x100c16ec]
or eax, 0x9497a4d8
add eax, 0x227ad739
and eax, 0xfbad4e13
sub eax, 0x46dcb915
xor eax, 0x414d9643
xor eax, 0x3f52df39
and eax, 0xe95e431b
sub eax, 0x32853da9
mov ecx, 0x6b6c283b
xor edx, edx
div ecx
mov ecx, 0x51df8b17
xor edx, edx
div ecx
xor eax, 0x534e050c
add eax, 0x4367b023
or eax, 0xb5bf5b64
mov ecx, 0xd29b5781
xor edx, edx
div ecx
or eax, 0x2494faa6
xor eax, 0xf93e21aa
xor eax, 0xf125e864
or eax, 0xfc4eca47
mov ecx, 0x8562e89d
xor edx, edx
div ecx
or eax, 0xf1086e75
add eax, 0x8ab28f2e
imul eax, eax, 0xe975d77f
and eax, 0xc8fda1cb
imul eax, eax, 0x78cc54fe
xor eax, 0x3c3f43f9
or eax, 0xf731a451
imul eax, eax, 0x6f1947fd
and eax, 0x72ab4ac3
or eax, 0xdb19dfec
add eax, 0x5273b237
xor eax, 0x6a689f10
xor eax, 0x264a7a2
sub eax, 0x8adfe250
xor eax, 0x27e696e5
imul eax, eax, 0xb970ae8c
add eax, 0xc34f6c6a
or eax, 0x484319f0
and eax, 0xb023d80d
or eax, 0xdc833708
imul eax, eax, 0xaf6e1205
mov ecx, 0x7c8fa2ac
xor edx, edx
div ecx
and eax, 0x9a336def
mov ecx, 0xeb4ea94b
xor edx, edx
div ecx
mov ecx, 0x3d789936
xor edx, edx
div ecx
or eax, 0x62428423
mov ecx, 0x4b4a0037
xor edx, edx
div ecx
or eax, 0xb6988c6b
and eax, 0x4fd4289c
mov ecx, 0x6928224e
xor edx, edx
div ecx
xor eax, 0x1ace79fb
xor eax, 0xc0cc58c8
or eax, 0x961aff48
and eax, 0xf634572a
sub eax, 0x3346d5a
add eax, 0x8f67ea23
imul eax, eax, 0x9feba844
add eax, 0xebdf653f
imul eax, eax, 0x524d92b5
sub eax, 0x7906ae26
sub eax, 0x20658952
mov ecx, 0x519f5a91
xor edx, edx
div ecx
xor eax, 0x280fcb21
add eax, 0x8ad2bc68
and eax, 0xdf1bebd0
xor eax, 0x843d64bd
add eax, 0x57b403ce
mov ecx, 0x97473edb
xor edx, edx
div ecx
mov ecx, 0x24615af6
xor edx, edx
div ecx
mov ecx, 0x8842bb8a
xor edx, edx
div ecx
imul eax, eax, 0x102c099f
and eax, 0x2232b2b2
add eax, 0x773ac7a4
cmp eax, 0x5361798
jb 0x10042734
mov eax, dword [0x100c16f0]
and eax, dword [0x100c16f4]
imul eax, eax, 0x61aa78a9
mov ecx, 0x49bb8640
xor edx, edx
div ecx
mov ecx, 0xf22735ac
xor edx, edx
div ecx
sub eax, 0x31005052
and eax, 0x76fdf549
xor eax, 0x28bed1ef
mov ecx, 0xe9bae933
xor edx, edx
div ecx
sub eax, 0x4a49ca36
or eax, 0xd19a5944
xor eax, 0x902ac72
add eax, 0x1cec1d57
imul eax, eax, 0x73934ba1
mov ecx, 0xe935f64b
xor edx, edx
div ecx
sub eax, 0x7e94e3f
sub eax, 0xadcfbcca
add eax, 0xfca6fa90
and eax, 0x2441deef
xor eax, 0xb8a9a9b0
imul eax, eax, 0xe7abf837
sub eax, 0x55dd7b29
and eax, 0x74e03f25
or eax, 0x72a3c00e
mov ecx, 0xc5c7578
xor edx, edx
div ecx
imul eax, eax, 0x1745a463
or eax, 0xc1a48288
xor eax, 0x3288559e
mov ecx, 0xbf8425d3
xor edx, edx
div ecx
add eax, 0x638c3bb7
xor eax, 0x272d2827
imul eax, eax, 0x2d53bcad
sub eax, 0x87edfdf2
and eax, 0x27790633
and eax, 0x2761311f
sub eax, 0x961e39f2
imul eax, eax, 0xd3d29e70
and eax, 0xd1b14ab9
imul eax, eax, 0x6eadbb43
sub eax, 0x605cb18d
and eax, 0x47417a2
xor eax, 0x5bfc69cc
and eax, 0xcbbd72f5
mov ecx, 0x592d16b6
xor edx, edx
div ecx
or eax, 0x727564f0
or eax, 0x183287d8
xor eax, 0x69d15a49
or eax, 0xb7ff9a16
add eax, 0xc955f9e9
imul eax, eax, 0x878d877
sub eax, 0x37a9cc09
mov ecx, 0x9889da42
xor edx, edx
div ecx
sub eax, 0x27cd7cfa
add eax, 0x9da8ffe8
sub eax, 0x256586d0
xor eax, 0xda619ac4
mov ecx, 0xdaa78003
xor edx, edx
div ecx
add eax, 0x439343c5
sub eax, 0x9c80e6b5
add eax, 0x962b0182
mov ecx, 0x890ebd86
xor edx, edx
div ecx
sub eax, 0x381048b7
xor eax, 0x55a9337e
and eax, 0x181c6b27
mov ecx, 0xe5add15
xor edx, edx
div ecx
and eax, 0xbe232e40
or eax, 0xc4d788af
or eax, 0x9a170b8f
add eax, 0x972d0c31
or eax, 0xb50895a7
add eax, 0x51c67e8b
mov ecx, 0xce0ce191
xor edx, edx
div ecx
mov ecx, 0x8ab3d789
xor edx, edx
div ecx
or eax, 0xa320bc68
cmp eax, 0x4eea14b9
jbe 0x100423b4
jmp 0x10042573
jmp 0x10042578
mov eax, dword [esi + 0x4c]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x10041a64
jmp 0x1004258c
mov eax, dword [esi + 0x7c]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x10041a20
mov eax, dword [esi + 0x30]
mov dword [eax], 0
mov eax, dword [esi + 0x30]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esi + 0x84]
push eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x20], eax
mov esp, eax
push eax
mov eax, esp
mov dword [esi], eax
push eax
mov eax, esp
mov dword [esi + 4], eax
push eax
mov eax, esp
mov dword [esi + 8], eax
push eax
mov eax, esp
mov dword [esi + 0xc], eax
push eax
mov eax, esp
mov dword [esi + 0x10], eax
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 0x18], eax
push eax
mov ebx, esp
push eax
mov edi, esp
push eax
mov eax, esp
mov dword [esi + 0x1c], eax
push eax
mov eax, esp
mov dword [esi + 0x24], eax
push eax
push eax
push eax
push eax
mov eax, dword [esi + 0x20]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x88]
mov dword [eax], ecx
mov ecx, dword [esi]
mov eax, dword [esi + 0x8c]
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
add ecx, eax
mov eax, dword [esi + 8]
mov dword [eax], ecx
mov ecx, dword [esi + 0xc]
mov eax, dword [eax]
add eax, 0x78
mov dword [ecx], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
mov eax, dword [eax]
add ecx, eax
mov eax, dword [esi + 0x14]
mov dword [edx], ecx
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x14]
mov dword [eax], ecx
mov ecx, dword [esi + 0x18]
mov eax, dword [edx]
mov eax, dword [eax + 0x18]
mov dword [ecx], eax
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
mov eax, dword [edx]
mov eax, dword [eax + 0x1c]
add ecx, eax
mov eax, dword [esi + 0x1c]
mov dword [ebx], ecx
mov ecx, dword [esi + 0x20]
mov ebx, dword [ecx]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x20]
add ebx, ecx
mov ecx, dword [esi + 0x20]
mov dword [edi], ebx
mov ecx, dword [ecx]
mov edx, dword [edx]
mov edx, dword [edx + 0x24]
add ecx, edx
mov dword [eax], ecx
sub esp, 8
mov dword [esp], 0x10
mov dword [esp + 4], 0x14
call fcn.1000d660
add esp, 8
mov eax, dword [esi + 0x24]
mov dword [eax], 0
jmp 0x100418cc
jmp 0x10041c17
mov edi, dword [esi + 0x50]
mov ebx, dword [esi + 0x44]
sub esp, 8
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 2
call fcn.10007fd0
mov edx, dword [esi + 0x74]
mov ecx, dword [esi + 0x34]
add esp, 8
mov eax, dword [esi + 0x4c]
mov ebx, dword [ebx]
mov eax, dword [eax]
mov ebx, dword [ebx + eax*4]
mov eax, dword [esi + 0x54]
mov dword [edi], ebx
mov edx, dword [edx]
mov edi, dword [edi]
add edx, edi
mov dword [eax], edx
mov edx, dword [ecx]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.1008a590
add esp, 8
jmp 0x10041fa4
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x48]
mov ecx, dword [esi + 0x74]
mov ecx, dword [ecx]
mov edx, dword [edx]
add ecx, edx
mov dword [eax], ecx
jmp 0x100421d9
jmp 0x100423b4